Home › Forums › GAMES在线课程(现代计算机图形学入门)讨论区 › 闫老师的入门系列完事了,后续如何学习图形学呢? › Reply To: 闫老师的入门系列完事了,后续如何学习图形学呢?
做过一段时间游戏开发,之前主要聚焦2D领域。需要补上3D相关的知识,刚好看到闫老师在知乎上的广告,于是就关注进来了。首先要感谢论坛的组织者,闫老师以及各位助教老师的无私付出,为大家提供这么好的学习机会。
关于后续的学习,我也说说我个人的想法,也算是抛砖引玉。个人觉得如果是从事游戏开发行业,应该更多研究实时高质量渲染的相关领域,所以特别期待闫老师现在开设的CS291A,前两个月也粗略的刷完了real time rendering 4th。如果不讨论游戏开发的其他领域,架构设计,网络同步,物理碰撞等领域,而只讨论渲染的话,闫老师今年课上也说可以再结合一本OpenGL或者DirectX的相关书籍进行一些相关编程接口和语言的学习。算是从理论到实践之路。
RTR4很多人说讲的很全,但是不深入,不过我觉得对于一个资深的游戏图形开发人员来说,需要保证自己的知识结构完备,对于每个点都知道在说什么,有什么常用方法,RTR4是一本好书,当然看起来也很头痛,确实太厚了,而且内容很杂,很多内容都适合作为一本书来展开。然而如果想改进项目品质或者图像的品质,可以保持对前沿渲染技术的追踪,比如GPU Gems,GPU Pro,GPU Zen等,这些不需要体系化阅读,想到一些问题,去查找相关文论,阅读并实现,以达到为我所用的地地步。游戏界和学术界不同,游戏产品能否顺利上市,受很多因素影响,所以大部分产品都不会应用很多前沿的图形技术,因为要有性能,成本以及稳定性等方面的trade-off。当然,现在前沿的技术在一段时间以后也都会应用到游戏开发领域。
综合前人的推荐,我自己正在看这几本书,希望今年内都能读完:《Real Time Rending》,《OpenGL编程指南》,《DirectX12 3D游戏实战开发》,《游戏引擎架构》等,上文提到的《Ray tracing in one weekend》系列也很不错,我也在动手实践中。
当然研究代码也是需要的,比如Unreal的源代码或者Ogre的源代码。后面就是真正游戏项目的积累了,将自己掌握的知识和技巧应用到实际的游戏项目开发中去,做过几个项目之后,会有更深的体会。我个人觉得,真正的项目代码和书本中讲的实现还是有很大区别的,因此编程和调试能力也很重要,因为游戏项目最终要落实到可发布和运行的产品,如果产品有重大bug,产品是不能发布的。也算做了几年游戏了,现在发现,游戏技术开发还是比较复杂的行业,涉及的领域太多:架构设计,编程,调试能力,网络同步,图形图像技术,物理模拟,AI,Gameplay,UI,脚本,反作弊等,太多了。也希望能和大家互相学习,相互讨论,共同进步。