原文链接:http://blog.csdn.net/soilwork/archive/2009/01/08/3731645.aspx
下面是我个人整理的:
【前言】
与玩游戏相比,写游戏要复杂上千万倍,除了需要掌握通用的编程技巧以外,还要有相当的图形学,物理,数学基础,特别是在国内,由于相关资料的缺乏,更是让初学者无从下手。下面总结了一些入门方法和比较容易入手的资料。
你要精通一门高级语言,比如C++,其次,要有良好的英文阅读能力。
对游戏开发者来说英文阅读能力是最重要也是最基本的工具之一,因为你遇到的大部分资源都将是英文的,不要总等着别人为你翻译。慢慢尝试着阅读英文资料,你会发现其实也并没有那么难。
【建议】
1:不要一开始就看专业图形学的书,这个时候你对图形编程还没有一个基本的感性认识,因此八成看的云里雾里。
2:不要以网上的教程和论坛提问作为主要学习途径,找一本好书,系统学习,效率才最高。
3:不要马上看SDK里的例子,很多图形学的基本原理仅仅通过读代码是不会明白的。
【入门】
首先,选择一门图形API,一般就是DirectX。
DirectX3D 入门书籍:
推荐<<Introduction to 3D Game Programming with DirectX 9.0>>:最好的DX入门教材,作者Frank Luna从浅入深,讨论了DX的方方面面。
英文版:http://www.china-pub.com/2023027
英文最新版:http://www.china-pub.com/2016815
中文版:http://www.china-pub.com/34663
<< Advanced 3D Game Programming With DirectX 9.0>>:书名虽然是advanced,但实际上没有多少advanced级别的内容。
英文版:http://www.china-pub.com/2022598
【巩固和拓展视野的阶段】
现在看计算机专业图形学的书就比较合适了。
吐血推荐<<Real-Time-Rendering>>:这本书算得上是所有图形程序员的必读书籍和参考手册了。最近刚出了第三版(已经有电子英文版了)。国内只出版了第二版,稍微有点老。
英文第三版:http://www.china-pub.com/2022659
中文第二版:http://www.china-pub.com/20566
三本为游戏程序员量身定制的数学书:
<<3D Math Primer for Graphics and Game Development>>
中文版:http://www.china-pub.com/26048
<<Mathematics for 3D Game Programming and Computer Graphics>>
<<Essential Mathematics Guide 2nd Edition>>:08年的新书
【兴趣与进阶】
其实入门之后,就没有固定的学习路线了,最好根据你感兴趣的方向来学习。
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册了。
另外Nvidia SDK和ATI SDK也是学习shader的重要资源。
最后还有刚出的<< Programming Vertex, Geometry, and Pixel Shaders>>
地形:
<<Real Time 3D Terrain Engines Using C++ And DX9>>非常全面的讨论了关于地形渲染的各种技术,至少应该把第5~9章都浏览一遍。之后便可以 到virtual terrain查阅近期的地形渲染技术。
模型导入和动画:
<<Advanced Animation with DirectX>>,仅此一本足以。
物理:
<<Game Physics>>和<<Game Physics Engine Development>>都不错。<<Real-time Collision Detection>>是碰撞检测方面最好的书,可惜目前还没有电子版。
LOD:
<<Level of Detail for 3D Graphics>>
Ray tracing:
<< Physical-Based Rendering - From Theory to Implementation>>
引擎设计:
<<3D Game Engine Design, Second Edition>>出了影印版本(第二版),强烈推荐。
影印版:http://www.china-pub.com/192098
最近发现<<Pro OGRE 3D Programming>>也很不错,200多页短小精干,但是可以让读者快速了解一个既有引擎的设计和构架。
AI:
<<Programming Game AI by Example>>非常不错,好像还有中文版。
备选<<Artificial Intelligence for Games>>
当然<<AI Programming Wisdom>>系列也是必读作品,不过目前网络上只有1~2册。
网络:
(无)
综合::
<<Game Programming Gems>>系列,不过由于内容涉及的过于广泛,文章质量参差不齐,选择性阅读就可以了。
历年GDC, Gamefest t,Siggraph等大型会议的paper也是应该关注的。
至于那些“All in one”或者n天较你写出个FPS游戏的书就不要读了,这类书的通病是什么都说了,结果什么也没说清楚。
======================================================================
图像渲染模块特性简介
场景
超大规模场景系统,支持地形的动态加载,实现整个世界的无缝拼接、室内外场景的无缝连接。
场景组织采用空间八叉树分割,PORTAL,CVS,BSP等先进技术,实现高效精确的裁剪,以及准确的碰撞检测。
全场景动态光照系统,可以根据时间在白天黑夜间平滑过渡,配合planar shadowmapping、perspective shadowmapping、omni shadowmapping、trapezoidial shadowmapping等先进的实时阴影技术,可以轻松模拟现实中复杂的光照环境。
地形
基于视差控制的LOD地形系统,能够采用有限的元素表现出极具真实感的复杂地形地貌,支持gloss mapping,normal mapping,parallax occlusion mapping等先进渲染技术,并且可以根据光照环境的改变实时动态生成真实的地形阴影。
模型
灵活高效的骨骼动画系统,支持动作帧间、动作和动作间的无缝平滑过渡,能够实现同一角色的多动作融合,支持软硬件加速顶点变换,以及静态模型的geometry instancing。
模型支持gloss mapping,normal mapping,parallax occlusion mapping,soft self-shadow等先进的渲染技术,配合高扩展性的材质系统,可以让美工轻松实现所见即所得的编辑。
粒子,草
采用geometry instancing、shader instancing等先进技术的高效可扩展的粒子、草体系统,支持同屏海量的粒子、草体绘制,支持粒子和风力等环境因素交互,支持脚本控制。
特效
逼真的水体渲染系统,支持全场景范围的折射、反射,支持无缝的水上水下场景过渡。
丰富的全屏特效系统,支持hdr glow、亮度自适应、景深、局部动态模糊、热空气扰动、体积光等多种特效。
UI
功能强大的轻量级UI库,通过lua脚本可方便快捷的实现第三方界面插件扩展。
浙公网安备 33010602011771号