参考
may佬《技术美术百人计划》
IMR, TBR, TBDR 还有GPU架构方面的一些理解
移动设备GPU架构知识汇总
图形3.4 延迟渲染管线介绍
渲染路径(Rendering Path)
决定光照的实现方式。简言之,就是当前渲染目标使用的光照流程
渲染方式
前向渲染(Forward Rendering)
在渲染每一帧时,每一个顶点/片元都要执行一次片元着色器中的代码,这时需要将所有的光照信息都传递到片元着色器中进行计算,包括了距离很远影响微乎其微的小型光源,会造成很大的浪费
待渲染几何体 → \rightarrow →顶点着色器 → \rightarrow →片元着色器 → \rightarrow →渲染目标
- 最亮的几个光源会被实现为像素光照
- 然后最多4个光源会被实现为顶点光照
- 剩下的光源会被实现为效率较高的球面调谐光照(Spherical Hamanic),这是一种模拟光照
延迟渲染(Deferred Rendering)
主要解决大量光照渲染的方案。实质上是先不迭代三角形做光照计算,而是先找出能看到的所有像素再去迭代光照,避免在看不到的三角形上造成浪费
延迟渲染将拆分为两个pass
- 第一个pass称为几何处理通路。首先将场景渲染一次,获取到待渲染对象的各种几何信息存储到名为G-buffer的缓冲区中,这些缓冲区将会