我正在为iOS和Android开发3D应用程序。
下图中的每个对象的材质都不同。
我想使对象3与对象2相交的部分出现和与对象1相交的部分消失。
注意:
对象3正在上下移动。
3个对象距相机的深度相同(z相同)。
您将必须使用Cg / HLSL在Unity的ShaderLab中编写自己的着色器,并使用模板缓冲区。 Unity's manual为您提供了基础知识,同时可以找到here的实用入门。
简而言之,模版允许您基于其他着色器通道的参考值来启用/禁用剪辑空间中的渲染。需要注意的是,这些值是全局值,并且所有着色器都可以在缓冲区中读取和写入,因此您应该仔细选择一个参考值。