版本: Unity 6 (6000.0)
语言英语
  • C#

RenderPipeline.EndCameraRendering

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实阅读了用户提出的每个建议,并在适用的情况下进行更新。

关闭

提交失败

由于某种原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

protected static void EndCameraRendering(Rendering.ScriptableRenderContext context, Camera camera);

在通用渲染管线 (URP) 和高清渲染管线 (HDRP) 中,Unity 会在对单个摄像机执行渲染操作后自动调用此方法。如果您正在编写自定义的可脚本化渲染管线,可以手动调用此方法来使用 RenderPipelineManager.endCameraRendering 委托。

以下代码示例演示了如果您正在创建自定义的可脚本化渲染管线,则在哪里调用此方法。

using UnityEngine;
using UnityEngine.Rendering;

public class ExampleRenderPipelineInstance : RenderPipeline { public ExampleRenderPipelineInstance() { }

override protected void Render(ScriptableRenderContext context, Camera[] cameras) { for (var i = 0; i < cameras.Length; i++) { var camera = cameras[i];

// Put your code for rendering the Camera here

// Call the RenderPipelineManager.endCameraRendering delegate EndCameraRendering(context, camera); } } }