# endCameraRendering

> Delegate that you can use to invoke custom code after Unity renders an individual Camera.

## Definition

* **Type:** Event
* **Namespace:** [UnityEngine.Rendering](/engine/6000.0/script-reference/unityengine/rendering.md)
* **Assembly:** UnityEngine.CoreModule

```csharp
public static event Action<ScriptableRenderContext, Camera> endCameraRendering
```

### Remarks

When Unity calls [RenderPipeline.EndCameraRendering](/engine/6000.0/script-reference/unityengine/rendering/renderpipeline/endcamerarendering.md), it executes the methods in this delegate's invocation list.

In the Universal Render Pipeline (URP) and the High Definition Render Pipeline (HDRP), Unity calls [RenderPipeline.EndCameraRendering](/engine/6000.0/script-reference/unityengine/rendering/renderpipeline/endcamerarendering.md) automatically. If you are writing a custom Scriptable Render Pipeline and you want to use this delegate, you must add a call to [RenderPipeline.EndCameraRendering](/engine/6000.0/script-reference/unityengine/rendering/renderpipeline/endcamerarendering.md).

The following code example demonstrates how to add a method to this delegate's invocation list, and later remove it.

```csharp
using UnityEngine;
using UnityEngine.Rendering;

public class ExampleClass : MonoBehaviour
{
    void Start()
    {
        RenderPipelineManager.endCameraRendering += OnEndCameraRendering;
    }

    void OnEndCameraRendering(ScriptableRenderContext context, Camera camera)
    {
        // Put the code that you want to execute after the camera renders here
        // If you are using URP or HDRP, Unity calls this method automatically
        // If you are writing a custom SRP, you must call <see cref="UnityEngine.Rendering.RenderPipeline.EndCameraRendering"></see>
    }

    void OnDestroy()
    {
        RenderPipelineManager.endCameraRendering -= OnEndCameraRendering;
    }
}
```

Additional Resources: [RenderPipeline.BeginCameraRendering](/engine/6000.0/script-reference/unityengine/rendering/renderpipeline/begincamerarendering.md), [RenderPipeline.EndCameraRendering](/engine/6000.0/script-reference/unityengine/rendering/renderpipeline/endcamerarendering.md), [RenderPipeline.BeginFrameRendering](/engine/6000.0/script-reference/unityengine/rendering/renderpipeline/beginframerendering.md), [RenderPipeline.EndFrameRendering](/engine/6000.0/script-reference/unityengine/rendering/renderpipeline/endframerendering.md), Unity Manual: Scriptable Render Pipeline
