unity前向渲染Pass
ForwardBase Pass(优先渲染),渲染一个逐像素平行光和所有的顶点/球面调和光,阴影只和平行光有关系,那阴影应该是这个Pass中实现的
ForwardAdd Pass(需要和Base配合使用,否则不生效),渲染剩余全部逐像素灯光
决定一个光源使用哪种处理模式取决于它的类型和渲染模式
光源类型指的是该光源是平行光还是其他类型的光源
光源的渲染模式指的是该光源是否是重要的(Important)
Unity会根据场景中各个光源的设置以及这些光源对物体的影响程度(比如,距离该物体的远近
、光源强度
等)对这些光源进行一个重要度排序。其中每个顶点最多计算4个逐顶点光照。其他的光以球谐函数(SH)的形式计算
逐像素的光源分类(默认最大4个)
最亮的方向光始终为每像素光源,就是场景中的主平行光
Render Mode 设置为 Important 的光源始终为每像素光源。
逐顶点的光源分类(默认最大4个)
Render Mode 设置为 Not Important 的光源始终为每顶点或 SH 光源。
球谐的光源分类(数量无限制)
Render Mode 设置为 Not Important 的光源始终为每顶点或 SH 光源。
参考
参考冯乐乐shader入门精要 https://zhuanlan.zhihu.com/p/509253252
官方 https://docs.unity3d.com/cn/current/Manual/RenderTech-ForwardRendering.html