我遵循了编码猴子教程,如何使用动态网格作为视图域的模板或可见多边形效果,并且已经使用了最新版本的Universal管道(我相信这使用了一个正向渲染器)。
我想使用2D照明,这需要一个2D渲染器,我也有工作。
不幸的是,我想不出有什么办法把它们结合起来。我获得了一个通用的RenderPipeline,并将我的2D渲染器和前向渲染器添加到渲染器列表中,但它只允许其中一个工作(我原以为它会按顺序触发)。
我如何使这两种效果一起工作,或者如果这是不可能的,有没有一种建议的方法结合2D照明和模板掩蔽?
发布于 2020-10-20 08:18:21
想出了解决办法。
对于FOV自定义网格,我必须使用一个新的着色器,它刚刚写到模板缓冲区。我找到了做这个的https://gist.github.com/ewandennis/ff0f12da482a0aff55486290c00c5e9e。我将其设置为将值1写入缓冲区。
然后,我不得不创建一个复制着色器的发光精灵之一,现在统一(不确定它是否可以张贴这一点,所以我将错误的一面,而不是这样做)。
我在三个通过部分中的每一个部分的顶部添加了以下内容:
Stencil
{
Ref 1 // use 1 as the value to check against
Comp equal // write this pixel if equal to 1.
}
我切换了精灵的材料指向这个着色器,现在一切都被剪辑到视场网。
https://gamedev.stackexchange.com/questions/186138
复制