diff --git a/bibliography.bib b/bibliography.bib index 6eed9ad..bcbdf05 100644 --- a/bibliography.bib +++ b/bibliography.bib @@ -72,6 +72,19 @@ @book{4b212a02-105c-42a2-ad5c-91c16a06e815 year = {2015} } +@book{978-1138627000, + author = {Tomas Akenine-M\"{o}ller and Eric Haines and Naty Hoffman and Angelo Pesce and Micha\l{} Iwanicki and S\'{e}bastien Hillaire}, + publisher = {A. K. Peters/CRC Press}, + title = {Real-Time Rendering}, + year = {2018}, + month = {8}, + edition = {4}, + pages = {1200}, + isbn = {978-1-13862-700-0}, + address = {Boca Raton, FL, USA}, + url = {https://www.realtimerendering.com/} +} + #chapter01 @article{10.1007/BF02684409, author = {Szirmay-Kalos, L. and M\'{a}rton, G.}, diff --git a/content/chap0101.tex b/content/chap0101.tex index 78ef6fc..9093ecf 100644 --- a/content/chap0101.tex +++ b/content/chap0101.tex @@ -13,7 +13,7 @@ \section{文学编程}\label{sec:文学编程} 和编程语言(例如C++)结合起来。 两套分离的系统会这样处理程序:\keyindex{编排器}{weaver}{literate programming文学编程} 把文学程序转换成适合排版的文档,\keyindex{整合器}{tangler}{literate programming文学编程} -则生成可供编译的源码\sidenote{译者注:我不太确定编排器和整合器的翻译是否合适。}。 +则生成可供编译的源码。 虽然我们的文学编程系统是自研的, 但很大程度上受到了Norman Ramsey的\emph{noweb}系统的影响。 diff --git a/content/prefaceonline.tex b/content/prefaceonline.tex index a188e38..d8f5643 100644 --- a/content/prefaceonline.tex +++ b/content/prefaceonline.tex @@ -71,7 +71,7 @@ \noindent{\LARGE\bfseries 路线图} 本书计划大致每年发布一次更新 -\sidenote{译者注:本书在翻译时已经发布第四版代码了,但还未在线发布书籍。}。 +\sidenote{译者注:本书在翻译时已经发布第四版书籍与代码了。}。 尽管在线版比纸质版更容易快速更新, 我们还是认为适当的更新速度有利于对下次发布做严谨的检查和编辑。 diff --git a/content/tanslator.tex b/content/tanslator.tex index 5de6855..57fba71 100644 --- a/content/tanslator.tex +++ b/content/tanslator.tex @@ -1,7 +1,8 @@ {\Huge\bfseries 译者序}\vspace{30pt}\\ “为什么要翻译这本书?” -这是自我翻译本书以来被问过的最多的问题。 + +——这是自我翻译本书以来被问过的最多的问题。 同学问过、父母问过、连面试官也问过。 我回答过各种各样的理由, 甚至连自己也不知道哪个理由才是最重要最关键的。 @@ -24,17 +25,17 @@ 里面偶尔出现的单词“run”是“运行”的意思而不是“奔跑”, 但书中花花绿绿的模型和最终展现的成品渲染图深深地吸引了我。 在电脑里生成一幅现实生活中不存在但分毫毕现的图像, -这样的技术对于一个刚刚学会怎么计算有理数的学生而言是非常震撼的。 +这样的技术对于一个刚刚学会有理数四则运算的学生而言是非常震撼的。 我让爸爸买回其中一本,回去对照着折腾起怎么安装3ds Max\textsuperscript{\textregistered} 和V-Ray\textsuperscript{\textregistered}, 然后磕磕绊绊地按书中步骤设置材质并花三个多小时渲染出一幅室内装修图。 现在想来,当年那台连独显都没有的电脑承受了太多不该它承受的计算开销。 我也只渲染过那么一次——模型、材质都是附带光盘里的, 照着做了一遍后我也学不会什么,只是觉得好玩。 -也许那时候对渲染的兴趣种子就这么埋进土里了。 +也许那时候对渲染的兴趣种子就这么埋进心里了。 -所以当我与它再会时,曾经的回忆便苏醒了。 -那时神经网络的黑箱特性让我厌倦, +直到我与它再会时,这些回忆便苏醒过来。 +那时神经网络的黑箱特性让我厌倦(这大概只是我的偏见), 而渲染技术明晰的数学原理如同命中十环那般精准地满足了我的口味, 让我有一种从迷茫中解脱的释然感。 事实上,我一直有完成一部“作品”的愿望。 @@ -45,7 +46,7 @@ 何况动漫粉丝的身份让我对渲染技术的滤镜又加深了一层。 在确认pbrt是一套可以自学搞定的完整教程后, 我认定这本内容详实的著作就是我心中追求的“作品”的模样。 -我下定决心以翻译的方式学习它,也许要很久,但不怕学不懂。 +我下定决心以公开翻译的方式学习它,也许要很久,但不怕学不懂。 毕竟检验是否学会的最好办法就是看能否教会别人。 毫不避讳地说,我就是希望从这个过程中获取自我认同,满足完美主义心理。 @@ -68,15 +69,24 @@ 要知道当初我读第一章面对那么多陌生概念是非常痛苦的。 与其搞砸后被人拿去嘲笑黑历史,不如留下一丝神秘感, 像江湖上不见其人的侠者一般只留下一个名号。 + 此外,这个笔名对我而言有特殊的意义。 -它改编自某家我十分钟爱的动画公司名。 -在我心中,这家公司就是耕耘“作品”的代表, -正是它制作的动画让我撑过翻译本书之前那段煎熬的岁月。 -然而一场人祸夺取了许多鲜活的生命,那些作品成为了永恒…… -无论是渲染还是动画,它们都在构建一个更美丽纯粹的世界, +它改编自国外某家我十分钟爱的动画公司名。 +在我心中,\href{https://www.kyotoanimation.co.jp/}{这家公司}是耕耘“作品”的代表, +正是她制作的动画让我撑过翻译本书之前那段煎熬的岁月。 +然而一场毫无道理的恐怖袭击突然夺走了这些鲜活的生命,那些作品成为了永恒的遗作…… +几年过去,我很高兴看到她能重焕活力,以不输曾经的水准再次为观众奉上一部部令人难忘的“作品”。 +着手翻译后不久,我又搜索到了某著名游戏工作室 +已故前辈\href{https://github.com/QianMo}{毛星云}在网上无私分享的大量渲染技术内容。 +尽管我未曾拜读全文,但只是简单浏览也能感觉得到他投入了多少心血。 +听闻他逝世前正在翻译另一本渲染巨著——第4版《\citetitle{978-1138627000}》\citep{978-1138627000}。 +如果他没有发生悲剧,现在译本应该已经面世了吧。 +从某种意义上说,我们在做一样的事情。 + +总之,无论是渲染还是动画或游戏制作,我们都是在构建一个更美丽纯粹的世界。 Kanition这个名字正是代表着为此努力的人。 所以即便这本译作将来获得好评,我也不会改回真名署名, -这是我为数不多的纪念方式了。 +这是我为数不多纪念他们的方式了。 \vspace{15pt} {\hfill {\itshape 译者 Kanition}\qquad} @@ -91,4 +101,6 @@ \href{https://github.com/star-hengxing}{star-hengxing}、 \href{https://theigrams.github.io/}{张晋}、 \href{https://github.com/leemeans}{leemeans}、 -\href{https://www.zhihu.com/people/itact/posts}{DeJhon-Huang}改进部分词句。 \ No newline at end of file +\href{https://www.zhihu.com/people/itact/posts}{DeJhon-Huang}、 +\href{https://github.com/CellarCordial}{CellarCordial} +改进部分词句。 \ No newline at end of file