建议学习流程:
1.《3D游戏编程大师技巧》如果想要更深入的理解3D图形的底层(包含了很多数学的运用),包括如何用代码构筑一个软渲染管线等等,务必看看。
2.《3dgame.pdf》中间穿插《directx实时渲染技术详解》、《DIRECTX9.0 3D游戏开发编程基础》,哪个觉得容易就看哪个,根据个人而定。
3.《OPENGL红宝书》这本书这里没有收录,是非常好的图形编程入门书(个人觉得这本书可以算做新手学习3D编程最好的入门书籍),网上可以下到(建议购买实体纸质版)。
4. GPU精粹系列。
另外《DOOM启示录》是描写了id software游戏公司的几位创始人成长励志的真实故事。
以上这些教程并不都是按流水线的步骤学习,很多时候都应该互相穿插的看,每本书里都有对应的知识点,彼此可以互补。
编程工具还是推荐visual studio 2005或2008、2010, VC6不建议,功能老旧,调试不便。
学习游戏编程最重要的并不是看书,而是3分看书7分实际编码,书中有很多实例,最好能亲自在电脑上编码调试,这是游戏编程入门最快速最捷径的手段,很多书中的原理知识,在实际编码调试前,都很难真正理解。
游戏编程学习应该是,渐进实践的方式,一旦有了非常基本的编程基础,就应该立即放下书本从最简单的游戏小程序写起(可以从修改其他游戏源代码的方式开始,多看别人写的程序也是快速提升编程水平的好方法),遇到了技术瓶颈再去看书查资料,然后回过头来再进一步改善自己的游戏程序,写代码和看书并行交叉,而不是闷着头看书(闷头看书是永远不可能入门的),这种学以致用的方式才能真正的走捷径。
对于一开始想利用unity3d、UDK这类强大速成引擎来做游戏的人来说,以上学习方法可能并不合适(无论用何种简单的引擎,基础仍然是决定游戏开发水平高低的关键),个人建议如果对游戏开发技术方面有较高的追求(真正想搞明白计算机游戏究竟是如何被实现的),并不甘屈于国外技术之下,想自己亲手做出unity3d、UDK这样的游戏引擎并可以改变国内游戏开发技术无比落后局面的人来说,那就从基础的学习流程开始吧,加油,有梦想的年轻人们!