学习游戏开发应该看什么书

来源:互联网 发布:外国网友评论淘宝2016 编辑:程序博客网 时间:2024/05/01 12:16
首先是3D方面
选择DirectX方面而不是OPENGL,按照顺寻推荐书籍:
1、《龙书》,网上有很多版本的翻译版,直接看英文版《Introduce to 3D Game Programming with DirectX9》,看好DX9后,再看DX10(相对于DX9改动不大)以及DX11(相对于前两个VERSION改动较大)就会容易很多。但是有一个很重要的问题要注意:自己去实现一些小例子(自己想到的例子)。一切需要实践的技术书籍都这样。
2、<<Real-Time-Rendering>>,网上很多人推荐,号称计算机图形学必看书籍,注:如果关于图像方面的数学没学好,那么可以看看下面的书籍<<3D Math Primer for Graphics and Game Development>>, <<Mathematics for 3D Game Programming and Computer Graphics>>和<<Essential Mathematics Guide 2nd Edition>>,其实看一本就OK。
3、开始完整地阅读DX文档以及部分SAMPLE,另外有人在这一步推荐阅读OGRE(Object-Oriented Graphics Rendering Engine,即:面向对象图形渲染引擎)的书《Pro OGRE 3D Programming》
现在可以细分类一下:
1、地形:
<<Real Time 3D Terrain Engines Using C++ And DX9>>非常全面的讨论了关于地形渲染的各种技术,至少应该把第5~9章都浏览一遍。之后便可以 到virtual terrain查阅近期的地形渲染技术。
2、Shader:
《Cg_tutorial》和《The Complete Effect and HLSL Guide》都是不错的入门材料,当然还有SDK文档。<<Shaders for Game Programmers and Artists>>有大量入门的例子。<<Advanced Lighting And Materials With Shaders>>详细介绍了各种光照模型和技术。<<GPU Gems>> 1~3册肯定是必读的,虽然有1,2有中文版,但某些翻译并不是很理想,强烈建议直接看英文版。ShaderX系列也是很经典的系列,每年出版一本,包含了最新的实时渲染技术,如今已经出了第6册了。不过网络上只能找到1~3册。1,2册大部分shader都是用asm写的,不过看懂原理,转换为HLSL也并不难。另外Nvidia SDK和ATI SDK也是学习shader的重要资源。最后还有刚出的<< Programming Vertex, Geometry, and Pixel Shaders>>
3、模型导入和动画:
<<Advanced Animation with DirectX>>,仅此一本足以。<<Character Animation With Direct3D>>已经可以很容易的找到了, 此书介绍了目前最新的游戏动画技术,作者是xbox360大作Alan Wake的开发人员,完全可以替代上面提到的那本。
4、物理:
<<Game Physics>>和<<Game Physics Engine Development>>都不错。<<Real-time Collision Detection>>是碰撞检测方面最好的书。:<<3D Game Engine Design, 2nd>>的8,9章也值得一看。
5、LOD:<<Level of Detail for 3D Graphics>>
6、Ray tracing:<< Physical-Based Rendering - From Theory to Implementation>>, 一本免费的入门教程Another Introduction to Ray Tracing
7、引擎设计:
说实话,这方面还没有特别好的书,大概越是核心的内容,越少有人愿意写吧。<<3D Game Engine Architecture Engineering Real-Time Applications with Wild Magic>>只有第三章值得一读。<<3D Game Engine Programming>>可以选部分感兴趣的章节看看,不过总的来说,讲的比较浅。更新:<<3D Game Engine Design, Second Edition>>出了影印版本,此书是<<3D Game Engine Architecture Engineering>>更新版,强烈推荐。

最近发现<<Pro OGRE 3D Programming>>也很不错,200多页短小精干,但是可以让读者快速了解一个既有引擎的设计和构架。
更新(2010.7.15): 新出的《Game Engine Architecture》非常不错,注意是Jason Gregory的版本。如果只推荐一本引擎方面的书,绝对是这本。传说有扫描电子版了。

更新(2010.6.28): <<Game Engine Gems>>是关于引擎设计的新系列丛书,与ShaderX类似,也是每年一本,目前已经出版了第一册,已有电子版
8、AI & Game Programming
<<Programming Game AI by Example>>非常不错,好像还有中文版,备选<<Artificial Intelligence for Games>>(已有第二版)。当然<<AI Programming Wisdom>>系列也是必读作品,不过目前网络上只有1~2册。
更新(2010.5.28):<<AI Game Engine Programming>>已比较好找了,虽然说这是一本名不副实的书,并没有完全介绍一个"one for all"类型的引擎,也没有具体算法讨论,但针对各种不同类型游戏的AI设计做了详细介绍,可作为一本指参考导性书选择阅读。
9、综合:
<<Game Programming Gems>>系列,不过由于内容涉及的过于广泛,文章质量参差不齐,选择性阅读就可以了。历年GDC, Gamefest,Siggraph等大型会议的paper也是应该关注的。至于那些“All in one”或者n天较你写出个FPS游戏的书就不要读了,这类书的通病是什么都说了,结果什么也没说清楚。