已经转行,但是从自己熟悉的行业转入一个新行业,各种心酸只有自己知道。
以下是我转行中所读到的图形学相关书:
1,Opengl 编程指南 或者龙书, 不管你是否志在游戏行业都推荐龙书,书中有很多例子,但是不太完整,你需要从最简单的三角形开始画,理解GPU渲染管线,三角面片等基本概念,以及opengl 或者D3D基本的API.
2,计算机图形学(第3版)
当以上书籍看完之后,你对渲染管线已经有了一个大致的理解,并且对物体在不同空间的坐标变换有了一定的认识,好你已经可以尝试着动手写个小项目了,简单的可以画一块砖头,复杂的可以尝试画一块大理石,当然了旋转平移缩放是必须要支持的,最好还能支持轨迹球。如果想挑战更复杂的, 那你就尝试着用FFT来实现电影级的海水渲染,当然这已经涉及到地形渲染了,以上内容学习完之后渲染相关的知识您已经掌握了,所以这本书属于必看的。
3,3D计算机图形学,偏重于各种图形学概念背后的数学原理,但是不建议初学者看,等在算法上有一定的积累之后翻翻还是有好处的。
4, HLSL 或者GLSL
GPU渲染技术从固定管线到可编程管线,那么可编程管线当然也要学了,如果您志在游戏行业的话,那就需要学习HLSL相关的内容了,这个时候可以参照书中内容把以前的项目把实现改成可编程管线的。当这个工作完成的时候,相信图形学行业的公司已经向你抛出橄榄枝了,是的,就这么简单,前提是你能够完成。
5,Real Time rendering
图形学领域的集大成之作之一,里面主要是一些经典论文的收集,内容包括刚体配准,地形及动画渲染,加速策略等。推荐详细学习地形及加速策略。因为地形渲染比如海水,大地,高山等在游戏渲染中属于重头戏,这时候需要参照GPU Gems系列及相关论文详细学习。而加速是计算机图形学领域是无法避开的坑,不过加速策略一般是具体场景具体分析,但是通用的方法比较容易掌握,比如LOD及针对管线中各个阶段的加速策略都是恒定的。看完之后可以对之前的项目进行一些优化,比如利用遮挡测试加速等。这本书也是面试渲染算法时必然会提到的一本。
6, OGRE 或者OSG, UE
渲染场景一般都很复杂,并且通常您开发的东西需要拿给别人来用。比如您开发了一个高山,或者一棵大树。而高山和大树需要拿给美工人员去编辑,这个时候引擎就派上用场了,所以你还需要学习一下一些经典引擎的架构。
等以上内容都看完相信您已经有自己的方向了。