当今,由于国家对文化产业的扶持力度加大,极大地促进了游戏这一行业的繁荣发展,越来越多的IT从业人员加入游戏开发或VR/AR虚拟现实和增强现实开发中。由于游戏行业是一种技术浓缩型的行业,作为一名从业者,要想在游戏行业尤其是3D游戏行业内生存、发展,没有过硬的技术是不行的。可是,多年的从业经历让我见到过许许多多的年轻人,他们在公司里只能写一些简单的逻辑,导致理论和技术长时间得不到提高,长期被边缘化,随时都有被辞退的风险。究其原因,是因为他们对于游戏基础理论知识缺乏运用到实战的经验,在公司的游戏开发中无法提供价值。在和他们接触的过程中,我发现一个很普遍的现象:这些能力欠佳的年轻人也有着强烈的欲望去学习专业知识,只是市场上的3D引擎书籍讲述得偏理论化,而且理论和技术点比较琐碎、脱节,与他们的游戏研发项目没有必然的联系,有时熬夜看完一本书,脑子里闪现的只是一些零散的知识点,在平时的工作实践中根本用不上,久而久之,也就失去了学习兴趣,得过且过了。作为他们的前辈,我也有相似的经历,耽误了很多时间,我一直想着怎么能让后来者少走弯路,理论联系实践。笔者经过多年的经验积累,终于奉上了这本呕心沥血之作。本书的目的就是要打破常规,将理论知识贯穿到游戏引擎的架构设计和游戏开发中,经典的案例就像万能公式一样,可以使读者边学习边运用到当前的游戏项目中去,实用性超强!初学者认真学完本书后,会更深入地理解引擎架构原理及数学知识在游戏中的运用,对自己能力的提升是非常好的助推器。
本书致力于用最通俗的语言讲述初学者最需要的知识,采用图文并茂的方式讲解各知识点在游戏实战中的运用,让读者更容易理解和掌握。本书涉及游戏开发中的知识点并没有做到面面俱到,而是讲述了游戏开发中最基础的知识,并将其封装到引擎开发中去,希望读者把3D游戏开发的基石打牢靠,为以后攀登3D引擎高峰打好系统理论基础。
本书的编写不同于以往的侧重理论知识讲解的书籍,对知识点的讲解侧重实用技术和基础知识相结合的方式,把真正游戏开发中常用的技术知识点抽离出来给大家讲解,采用的是一边讲解理论知识,一边与游戏案例结合的方式,真正做到理论与实践相结合与系统化。
本书手把手地教读者如何从无到有架构游戏引擎,以及如何去利用架构好的游戏引擎开发设计游戏,不借助于任何第三方库文件,自己动手封装底层库,更能让读者知道DirectX或OPENGL、OPENGLES提供的库接口的实现原理,真正做到深入引擎最底层。游戏中使用的模型是开源的Ogre模型插件实现的,这样整本书的引擎架构就是一整套完整的引擎设计,以后也可以做跨平台移植。在本书的最后,给大家介绍了Shader编程案例的实现,作为3D引擎开发者,GPU编程是必不可少的。目前一些知名的游戏公司,如网易、腾讯、蜗牛等都有公司自己研发的3D引擎,这也体现了公司自己的研发能力。随着VR/AR的崛起,更期待支持VR/AR多种设备的3D引擎。毕竟国内真正从事3D引擎开发的人相对来说比较少,所以在3D引擎开发方面,市场潜力还是非常大的。