
通常情况很多教程教描边只教深度上下左右去对比如果差值过大就判断是描边那么这种情况下解决不了这种问题如下当两个需要描边的物体靠的很近的时候两个物体相融的边界不会产生描边因为深度差值不够大这个时候需要融入法线来做这件事如果深度插值不够大但是法线相邻两点差值过大的话即描边还有一种特殊情况比如这一块的衣服它深度差距不算大法线差距也不算特别大这种情况会引入一个叫ID图的图片来辅助你画这种类型的线ID图很简单就是比如说你衣服映射到的UV上全是绿色皮肤是红色它会查找周围像素是否有和ID颜色不一样的颜色如果有那么这一块就是边界需要描边那么在衣服和皮肤的边界久能得到有效的描边描边还存在一个问题就是如果是屏幕后期描边那么至少描边是一个像素很远的情况下描边也是至少一个像素那么会导致二次元角色离我们越远角色大小相对于描边的粗细描边权重会越来越大这影响美观且美术不可控所以我们换一种思路将描边的颜色越来越融入环境即可解决这个问题根据距离越远融入环境的权重越来越大即可屏幕描边能精细控制某些位置描边的粗细吗答案是能但是性能开销较大就是将顶点色转化通过RDG的形式转化到屏幕上RT通过这张RT最后来控制角色描边的深浅角色少的时候还好多的就别了还是老老实实用backface通过顶点色控制描边粗细一套性能会更好