首页 > 代码库 > 《游戏引擎全局光照技术》到底是一本什么样的书?

《游戏引擎全局光照技术》到底是一本什么样的书?

你可能觉得《游戏引擎全局光照技术》是另一本图形学理论知识科普读物,对不起,你错了!本文以问题的方式介绍该书的特点,更多信息的试读内容下载欢迎访问:http://www.thegibook.com

1. 这本书面向的读者群体是谁?
本书面向所有需要了解计算机图形学中渲染相关原理的职位,包括游戏,影视动画,以及其它需要使用Unreal Engine等游戏引擎来处理工作的行业;

2. 这本书定位什么级别?
中高级,这本书最核心的目的是帮助具备一定基础的读者系统地梳理各个庞杂的计算机图形学知识体系,如果您是初学者,可能需要花费更多地时间消化理解。

3. 阅读这本书需要什么基础?
为了更好地理解本书,您需要具备高等数学相关的一些基础知识,当然您不必精通,本书会帮助您复习那些图形学中需要使用的数学知识;当然本书并不是一本理论性非常强的书籍,所以书中大部分的公式仅是用来帮助解释概念,所以您基本上只需要明白它的意思,理解概念方法才是最重要的,计算机图形学本身是工程性质而非基础理论学科,等您需要做深入研究的时候可以再去查阅更基础的知识

4. 这本书包含哪些数学知识?
图形学里涉及的有用的数学,这本书大部分都会介绍,而且比较详细,比如数字信号采样,过滤,蒙特卡洛方法,球谐函数,概率论,Iterative Method,Random walk,Makrov Chain,Metropolis,傅里叶变换,Importance Sampling和Multiple Importance Sampling等,但是您不需担心,这本书会帮助您复习这些知识,所以您只需要曾经学过即可。

5.这本书有示例吗?
这本书还是偏理论方法一些,所以不是那种手把手入门的书籍,我们重点在详细讨论众多图形学方法及其相应的思路,并试图去解释多种方法之间的一些共同核心的基本方法,这是一个很大的挑战并且需要很大的篇幅了,所以我们把一些示例类书籍留给别的作者;但是本书会将几乎所有概念对应到Unreal Engine,CryEngine,Unity 5等游戏引擎的功能上,所以您能够更轻易地去理解这些引擎的特性

6. 这本书和《Real-time Rendering》相比有什么不同?
《Real-time Rendering》(RTR)是一本对实时渲染领域有较大影响的书籍,本书和RTR在知识范围覆盖方面大致相当的,但本书覆盖的知识更新,RTR最后一版出版于2008年,并且作者在其网站上明确表示最近几年并无较大技术革新以至于需要一个新的版本;从这个角度可以看出,RTR注重的是图形学中非常基础的概念部分,它的内容是以基础理论的各个方面为线索来组织的,它更倾向于教科书的方式;而本书是以图形学中的一些GI方法为线索的,围绕不同的GI方法去探讨它们的各种思路和联系,并且把这些技术对应到当今工业中主流游戏引擎的功能特性中去,因此本书的实践性更强;另一个很大的不同点是,RTR完全讲述实时方法,而本书认为理解一个游戏引擎的工作机制需要完全掌握离线和实时渲染,所以本书覆盖更多如光线追踪,辐射度等离线方法的内容,能够更加全面地扩充读者的知识范围

7. 这本书和《Physically Based Rendering: From Theory to Implementation》有什么不同?
《Physically Based Rendering: From Theory to Implementation》(PBRT)是另一本图形学领域影响较大的书籍,也是我最爱的书籍(胜过RTR),这本书的价值在于它讲述了实现一个离线渲染器的各个方法的细节及需要的理论知识,你在像诸如RTR这样的理论性书籍中是看不到很多实现细节的,这本书详细地讨论了所有这些理论知识怎样被转换到实践中,包括那些数学模型怎样被应用于程序中;这样的对于一个完整方法的系统性讲述有助于读者更立体地理解一门技术,所以本书受其影响,它以各种不同的GI技术为中心来讲述这些技术在实现中的各个细节,各种不同的思路,各种不同的优化和改进,以使读者更能更立体地理解这种技术背后的本质;当然本书还是以理论知识为主,所以并不像PBRT覆盖更多的实现细节,但是反过来,本书有更多的篇幅去详细介绍每种技术涉及的原理,而PBRT由于以实现为主,它的原理介绍相对比较简单,基本上它假设读者对这些基本原理已经具有一定的了解,在这种情况下阅读PBRT会有很大收获

8. 那这本书到底像谁?
可以说这本书的写作思路和视角非常新颖,市面上绝大部分书籍都是以上两类中的一种,要么理论和实践中选一种,要么离线和实时中选一种,本书同时涵盖了:理论,实践,离线和实时,如果非要挑一本相像的应该是《Advanced Global Illumination》(AGI),但是AGI更偏重离线方法,并且本书的实践性更强,基础知识部分更详细

9. 这本书的写作思路是什么?
这本书主要围绕图形学中主要使用的一些全局光照技术来展开,在介绍每一种技术的时候,我们不光只介绍它在某个引擎里是怎么使用的,而会探讨这种技术的发展历史,各种不同的思路,让你能够系统地理解这种技术相关的各种概念,并且我们还会讨论多种独立技术之间的共同联系。以第四章为例,第四章的内容是讨论当前业界比较流行的延迟着色技术,延迟着色的概念本身很简单,但是延迟着色还有两种更优化的变种:分块(tiled shading)和分簇(clustered shading)着色,并且延迟着色带来新的挑战是着色器管理非常复杂,所以我们讨论了怎样高效管理着色器,另外,延迟着色对SSAA/MSAA技术并不友好,所以我们接着深入分析延迟着色技术下的一些流行反走样技术,如形态反走样(MLAA,SMAA),时间反走样(TAA)以及AGAA等,并梳理这些AA技术的概念及方法。所以读者可以看到这本书的写作风格,它试图去系统地讨论每一种技术相关的所有概念,并梳理这些概念之间的联系,这是这本书最核心的定位

10. 这本书是讲述实时渲染还是离线渲染的?
大多数关于计算机图形学的书籍,都是专门针对实时或者离线渲染领域,例如《Real-Time Rendering》针对实时渲染,而《Physically Based Rendering: From the Theory to Implementation》聚焦于离线渲染。而客观的事实是,实时和离线渲染同属于计算机图形学领域,它们只是在当前硬件水平下针对实时性需求的划分,因此,不仅作为渲染工程师我们需要同时掌握实时和离线渲染,另一个事实是,实现渲染中的静态光照贴图,其它一些预处理数据等都是需要借助于离线渲染来实现;此外,很多实时的全局光照模型都是从离线渲染模型优化,改进而来,学习离线渲染对实时渲染中概念理解有极大的帮助。因此本书不特别区分实时和离线渲染,当然我们会特别说明每个光照模型的实时性

11. 这本书的内容长度是多少?
这本书最终的正文页数(不包括引用资源,前言等)在8000-1000页之间,或者以上

11. 这本书预计什么时间出版?
本书预计于2017年中完稿,2017年下半年出版,但是目前不好估计,请读者参见本站首页的进度报告

13. 我可以提前试读全书内容么?
可以,本书对所有人开放全书试读,详情参见:全书试读邀请

《游戏引擎全局光照技术》到底是一本什么样的书?