[笔记]庄懂的技术美术入门(八)
1.OldSchoolPlus_VS


2.Task01

a.计算兰伯特乘颜色

b.计算Phong高光并采样Ramp图,计算菲涅尔范围与高光进行插值,最后与兰伯特结果相加

3.Task02

a.利用世界法线的G分量得到由下到上和由上到下渐变的遮罩,然后分别Lerp颜色得到从上到下的颜色渐变

b.计算菲涅尔和颜色Lerp,然后和上述结果Blend,最后用AO图做遮罩,OccCol和Blend结果进行插值

c.计算Phong高光乘颜色,和上述结果分别乘上阴影然后相加

d.最后加上菲涅尔颜色

4.法线贴图

由于法线方向的分量范围是[-1,1],而像素的分量范围为[0,1],因此我们需要做一个映射,通常使用的映射是: pixel = (normal+1) / 2,所以我们在Shader里对法线纹理采样后,还需对结果进行反映射,得到原先的法线方向:normal = pixel * 2 - 1
光照计算需要将法线贴图从切线空间转到世界空间
连连看里面需要用Code节点构建TBN矩阵

float3 var_NormalMap=UnpackNormal(tex2D(_NormalMap,i.uv0)).rgb;
UnpackNormal为法线贴图解码


