我有个问题。我想要一个灰色效果只适用于舞台上的椅子。这把椅子有一层CurrentItem
。我有两个摄像头:
Camera_All
呈现除CurrentItem
层以外的所有内容(我在CullingMask中设置了此异常)Camera_CurrentItem
最后:
我需要的不仅仅是一种效果,还有一些效果。
发布于 2017-05-08 11:08:32
一切都变得灰色,因为后处理总是画出整个屏幕,所以效果会被应用到每个像素上。由于相机的顺序是Camera_All,然后是Camera_CurrentItem,因此对Camera_CurrentItem的后处理将应用于Camera_All先前绘制的所有像素。
如果您交换绘图顺序(通过切换两个摄像机的深度属性),并将Camera_All的清晰标志设置为“不清楚”,则首先绘制椅子,然后是灰度效应,然后是所有非椅子的东西。
如果这有效,那就太好了!
我认为这不太管用。您可能只会看到一个灰色的椅子,与任何背景相机_CurrentItem的明确标志口授。要解决这个问题,您需要修改灰度效果着色器。
复制着色器文件,并在ZWrite Off
块中添加SubShader。我没有你特定的着色器,但是你添加的代码会像
SubShader
{
Tags { "RenderType"="Opaque" }
LOD 100
// You'll add the following line
ZWrite Off
里面可能还有其他的线条,这很好。寻找Tags
或LOD
行,并将新的ZWrite Off
线靠近它们。
现在,您可以将新的着色器拖到灰度效果组件的shader属性中,您应该可以看到整个场景按预期组装。
https://gamedev.stackexchange.com/questions/140837
复制