上面的图像是我试图在Unity中使用默认渲染器复制的。我需要一个网格或平面或任何东西来剪切掉相机渲染的部分,并显示其他相机渲染的内容。
我尝试使用渲染纹理和剔除遮罩,但都不起作用。我确实看过着色器,但我以前从未使用过,这就是为什么我需要帮助。如果有人了解着色器,或知道更好的解决方案,那将是非常感谢。
这个问题可能有点短,但我的较长草稿已被删除,我不想再重复每一个细节。此外,我正在使用默认渲染器,这将是一个虚拟现实应用程序,我想我应该提到的情况下,完全改变我必须做的。现在还不晚,如果需要改变渲染器虽然。
1条答案
按热度按时间j0pj023g1#
一个不需要编写着色器的简单解决方案,你可以只使用一个UI遮罩来显示RenderTexture。我假设你有2个图层L和M,一个RenderTexture R,下面是层次结构:
将Camera2的目标设置为RenderTexture,然后创建一个UI画布,在其下面添加Mask和RawImage,为Mask给予一个sprite,将RawImage的纹理设置为RenderTexture,现在您应该看到RenderTexture被遮罩。