顶点照明渲染路径

1. 顶点照明渲染路径处理光照的方式

基本思想就是所有的光都按照逐顶点的方式进行计算的,在内置渲染管线中,它只会最多记录8个光源的数据,只会将光相关的数据填充到那些逐顶点相关的内置光源变量

顶点照明渲染路径仅仅是前向渲染路径的一个子集,所有在顶点照明渲染路径中能实现的效果都可以在前向渲染路径中实现
它对硬件配置要求最少、运算性能最高,但是效果是最差的
它不支持那些逐像素才能得到的效果,比如阴影、法线纹理、高精度高光反射等
它的基本思想就是所有的光都按照逐顶点的方式进行计算的
在内置渲染管线中,它只会最多记录8个光源的数据,会根据光源类型、强度、距离等因素来决定

Unity中的顶点照明渲染路径只会将光相关的数据填充到那些逐顶点相关的内置光源变量
意味着我们不能像前向渲染路径中那样使用逐像素相关的内置变量

2. 顶点照明渲染路径在哪里进行光照计算

在一个Pass当中按照逐顶点的方式一次性对所有光照去进行计算

要进行光照计算,那肯定是在Shader当中的Pass渲染通道中进行计算。
顶点照明渲染路径通常在一个Pass当中就可以完成对物体的渲染。

在这个Pass当中我们会计算我们关心的所有光源对该物体的影响,并且会按照逐顶点的方式一次性对所有光照去进行计算
因此它是Unity内置渲染管线当中最快速的渲染路径,并且具有最广泛的硬件支持,只是相对来说渲染效果最差

3. 顶点照明渲染路径的内置光照变量和函数

我们完全可以直接调用内置函数 ShadeVertexLights 或 ShadeVertexLightsFull,就可以完成对所有光源的逐顶点统一计算

常用内置光照变量

顶点照明渲染路径_第1张图片

常用内置光照函数

你可能感兴趣的:(Shader,unity)