
·本专栏文章记录笔者阅读学习《Unity Shader入门精要》的感想与笔记,方便日后复习与查找
一、学习Shader的目的
对于我而言
①了解游戏中丰富多彩的世界与各色各样的特效是如何实现的
②将物体以自己的意愿渲染
二、学习Shader的困难之处
①Shader牵扯到整个渲染流程,而Shader又只是渲染流程的一个子部分
②Shader的语法更多是面向GPU工作的,其语法并不直观
因此,要学习好Shader,我们是需要对这两处地方对症下药的
三、学习Shader需达成的目标
①了解与熟悉整个渲染的流程
②了解与熟悉整个渲染的框架
即:在脑海中建立一个渲染流程的整体体系,这对我们克服我们提到的上述困难是很有必要的
四、学习的路径
1.基础部分
- 学习现代GPU是如何实现整个渲染流水线的
- 学习Unity Shader的实现原理与基本语法(其本质上是对原有渲染流程的封装,并提供给开发者的接口)
- 学习基础的线性代数只是,理解空间变换的意图与原理
2.初级部分
- 学习最基础的顶点/片元着色器,理解每一步的原理,与常用辅助调试技巧
- 学习Unity Shader如何实现最基础的光照
- 学习Unity Shader中基础纹理的使用
- 学习Unity Shader中透明度测试与透明度混合以及渲染顺序相关知识
3.中级部分
- 学习在基础光照上,实现更重要的阴影和光照衰减等光照计算,实现完整的光照计算
- 学习在基础纹理的基础上,使用更高级的纹理
- 学习在Shader中使用时间变量使画面移动起来
4.高级部分
- 学习屏幕后处理效果,了解基本的屏幕特效实现原理
- 学习使用深度和法线纹理进一步实现更多屏幕特效
- 学习卡通渲染、素描风格渲染等特殊风格的渲染方式(非真实感渲染)
- 学习使用噪声
- 学习Unity中常用的渲染优化技术
5.扩展部分
- 学习表面着色器的实现原理与使用方法
- 学习Unity如何实现基于物理的渲染以及如何利用
- 学习Unity5更新的东西
- 学习更多更深的图形学知识!
五、总之
要学好这个东西不是很容易的,需要虚心与踏实,以及持之以恒的努力,还有最重要的是 要动脑子!!还有不动笔墨不读书!!以及时刻想着实践和运用,最后是保持热爱与憧憬
祝你好运

2万+

被折叠的 条评论
为什么被折叠?



