docs.unity3d.com
    Show / Hide Table of Contents

    Struct CustomPassUtils.OverrideCameraRendering

    Overrides the current camera, changing all the matrices and view parameters for the new one. It allows you to render objects from another camera, which can be useful in custom passes for example.

    Namespace: UnityEngine.Rendering.HighDefinition
    Syntax
    public struct OverrideCameraRendering : IDisposable

    Constructors

    OverrideCameraRendering(CustomPassContext, Camera)

    Overrides the current camera, changing all the matrices and view parameters for the new one.

    Declaration
    public OverrideCameraRendering(CustomPassContext ctx, Camera overrideCamera)
    Parameters
    Type Name Description
    CustomPassContext ctx

    The current custom pass context.

    Camera overrideCamera

    The camera that will replace the current one.

    Examples
    using (new CustomPassUtils.OverrideCameraRendering(ctx, overrideCamera))
    {
        ...
    }

    OverrideCameraRendering(CustomPassContext, Camera, Single)

    Overrides the current camera, changing all the matrices and view parameters for the new one.

    Declaration
    public OverrideCameraRendering(CustomPassContext ctx, Camera overrideCamera, float overrideAspectRatio)
    Parameters
    Type Name Description
    CustomPassContext ctx

    The current custom pass context.

    Camera overrideCamera

    The camera that will replace the current one.

    Single overrideAspectRatio

    The aspect ratio of the override camera. Especially useful when rendering directly into a render texture with a different aspect ratio than the current camera.

    Examples
    CoreUtils.SetRenderTarget(ctx.cmd, renderTexture.colorBuffer, renderTexture.depthBuffer, clearFlag);
    
    float aspectRatio = renderTexture.width / (float)renderTexture.height;
    using (new CustomPassUtils.OverrideCameraRendering(ctx, overrideCamera, aspectRatio))
    {
        ...
    }
    Back to top
    Terms of use
    Copyright © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023