【Unity Shader】在后处理阶段使用模板

美式漫画风格的边缘描边,是基于图像检测的全屏后处理手段,做法是在 OnRenderImage 方法中处理。然后需要做到部分不描边,这个也可以用来分来做描边,很自然的想到使用模板来分开处理,但是 OnRenderImage 中按 unity 论坛中有人说的是 stencil 这时数据已经被清除了(不确定具体原因),一直没有效果,所以将这部分的处理移到了 OnPostRender 方法中,通过手动绘制 quad 的方式做。

  • 关于 OnRenderImage 和 OnPostRender 的流程,参考 U3D 内置事件执行顺序
  • 还有一个成功的帖子,来自 钱康来的博客
  • 我也手动试过了确实在这里面 Stencil 数据依旧存在,如何使用参考 OnPostRender 中的渲染
  • 但是使用 OnPostRender 依旧存在一些问题,数据有些乱,还得去查些资料,查完这里补上

猜你喜欢

转载自blog.csdn.net/weixin_42561030/article/details/82623116