包含此页的版本:
不含此页的版本:
本指南介绍如何将可编写脚本渲染器功能应用于特定相机在场景中创建特定视点图像的组件。输出要么绘制到屏幕上,要么作为纹理捕获。更多信息
请参阅术语表类型。
此方法允许你控制可脚本渲染器功能的效果应用于哪些摄像机。当项目使用其他摄像机来渲染元素(如反射)时,使用可脚本渲染器功能可能会导致意外结果,这一点尤其重要。
你可以向可脚本渲染器功能脚本添加逻辑,以在可脚本渲染器功能应用效果之前检查特定的摄像机类型。
本指南分为以下部分:
本指南假设你已经拥有完整的可编写脚本渲染器功能。如果没有,请参阅如何创建自定义渲染器功能。
此脚本将可编写脚本渲染器功能应用于特定摄像机类型。在此示例中,它仅将该功能应用于游戏摄像机。
打开要应用于摄像机的可脚本渲染器功能的C#脚本。
在AddRenderPasses方法,添加以下内容if陈述:
if (renderingData.cameraData.cameraType == CameraType.Game)
将必要的渲染通道从可编写脚本渲染器功能添加到渲染器中,并使用EnqueuePass方法如下图所示。
if (renderingData.cameraData.cameraType == CameraType.Game)
{
renderer.EnqueuePass(yourRenderPass);
}
此可脚本渲染器功能现在仅适用于具有 游戏(Game) 摄像机类型的摄像机。
注意:请注意,URP 调用
AddRenderPasses每个摄像机每帧至少一次,因此最好在此处尽量减少复杂性以避免性能问题。