你好!我是Unity的新手
我有一个带有全屏着色器的2D渲染器资源,它可以作为屏幕上所有对象的调色板交换效果。我将其添加为全屏通道渲染功能。问题是,我还制作了一个只想应用于玩家的着色器。由于我需要这个着色器在全屏调色板交换之后应用,所以我将它添加为渲染对象功能,这样它就能作用于已经交换过颜色的结果,而不是原始颜色。该着色器位于玩家的一个子对象上,该子对象复制了玩家的轮廓。这导致着色器会穿透墙壁,即使玩家在墙壁后面时,也能绘制出玩家的轮廓。例如,我的瓦片地图在Z=1,而玩家在Z=0,所以墙壁应该渲染在玩家前面,确实是这样,但材质将玩家绘制在了墙壁之上。我在网上找到了一些关于深度设置的信息,但无法让它们正常运作。我附上了展示问题、玩家着色器以及2D渲染器设置的截图。有没有人知道如何让着色器尊重墙壁的深度/遮挡,同时仍然将其保留为全屏通道之后的渲染对象通道?
提前感谢!!
在2D游戏中,能否强制渲染对象忽略离摄像机更近的物体?
评论 (0)