卡通人物渲染
cartoonShader.zip9.8 KB
SSST 贴图的作用
其实SS贴图主要的作用就是对于角色的部分有一个底色,不至于让所有部分底色都是白色
非固定阴影变换解析
1)
G通道阴影通道贴图
2)
通过阴影遮罩重新计算
3)
重新计算的光照 加上 兰伯特光照
4) 把光照强度缩小0.5 (这个值可以设置为参数)
5)
限制遮罩的强度 最大最小值后的效果
最终遮罩图过渡 第一个阴影图与主贴图的效果
最终的效果
固定阴影解析
第二个阴影图,其实和第一个阴影图一样
这里最主要的是Step操作,对于阴影值低的部位(也就是阴影数小的部位)采用 第二个阴影图 ,若阴影强度若则还是使用第一个阴影图
固定阴影 与 非固定阴影的插值
固定阴影 是主贴图与第一张阴影插值的结果
非固定阴影 是 第一张阴影 与 第二张阴影 插值的结果
也就是说 非固定阴影只是单纯的阴影图 没有主贴图
所以 阴影强度高 采用非固定贴图 ,反之采用 固定阴影
图中的 ShadowIntensity 就是用来控制 固定阴影 与 非固定阴影 插值的系数 (系数越低,则阴影强度越高的值 采用非固定阴影)
卡通高光
1) 普通的 Blinn-Phong 高光计算
2)
通过 B通道的高光贴图,采用Step方法 剔除掉 高光弱的部分,保留高光强的部分
3)计算最终的高光颜色,采用A通道的广告强度系数,区分不同部位的高光强度