docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class CustomPassVolume

    Unity Monobehavior that manages the execution of custom passes. It provides

    Inheritance
    object
    Object
    Component
    Behaviour
    MonoBehaviour
    CustomPassVolume
    Implements
    IVolume
    Inherited Members
    MonoBehaviour.IsInvoking()
    MonoBehaviour.CancelInvoke()
    MonoBehaviour.Invoke(string, float)
    MonoBehaviour.InvokeRepeating(string, float, float)
    MonoBehaviour.CancelInvoke(string)
    MonoBehaviour.IsInvoking(string)
    MonoBehaviour.StartCoroutine(string)
    MonoBehaviour.StartCoroutine(string, object)
    MonoBehaviour.StartCoroutine(IEnumerator)
    MonoBehaviour.StartCoroutine_Auto(IEnumerator)
    MonoBehaviour.StopCoroutine(IEnumerator)
    MonoBehaviour.StopCoroutine(Coroutine)
    MonoBehaviour.StopCoroutine(string)
    MonoBehaviour.StopAllCoroutines()
    MonoBehaviour.print(object)
    MonoBehaviour.useGUILayout
    MonoBehaviour.runInEditMode
    Behaviour.enabled
    Behaviour.isActiveAndEnabled
    Component.GetComponent(Type)
    Component.GetComponent<T>()
    Component.TryGetComponent(Type, out Component)
    Component.TryGetComponent<T>(out T)
    Component.GetComponent(string)
    Component.GetComponentInChildren(Type, bool)
    Component.GetComponentInChildren(Type)
    Component.GetComponentInChildren<T>(bool)
    Component.GetComponentInChildren<T>()
    Component.GetComponentsInChildren(Type, bool)
    Component.GetComponentsInChildren(Type)
    Component.GetComponentsInChildren<T>(bool)
    Component.GetComponentsInChildren<T>(bool, List<T>)
    Component.GetComponentsInChildren<T>()
    Component.GetComponentsInChildren<T>(List<T>)
    Component.GetComponentInParent(Type, bool)
    Component.GetComponentInParent(Type)
    Component.GetComponentInParent<T>(bool)
    Component.GetComponentInParent<T>()
    Component.GetComponentsInParent(Type, bool)
    Component.GetComponentsInParent(Type)
    Component.GetComponentsInParent<T>(bool)
    Component.GetComponentsInParent<T>(bool, List<T>)
    Component.GetComponentsInParent<T>()
    Component.GetComponents(Type)
    Component.GetComponents(Type, List<Component>)
    Component.GetComponents<T>(List<T>)
    Component.GetComponents<T>()
    Component.CompareTag(string)
    Component.SendMessageUpwards(string, object, SendMessageOptions)
    Component.SendMessageUpwards(string, object)
    Component.SendMessageUpwards(string)
    Component.SendMessageUpwards(string, SendMessageOptions)
    Component.SendMessage(string, object)
    Component.SendMessage(string)
    Component.SendMessage(string, object, SendMessageOptions)
    Component.SendMessage(string, SendMessageOptions)
    Component.BroadcastMessage(string, object, SendMessageOptions)
    Component.BroadcastMessage(string, object)
    Component.BroadcastMessage(string)
    Component.BroadcastMessage(string, SendMessageOptions)
    Component.transform
    Component.gameObject
    Component.tag
    Object.GetInstanceID()
    Object.GetHashCode()
    Object.Equals(object)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, bool)
    Object.Instantiate<T>(T)
    Object.Instantiate<T>(T, Vector3, Quaternion)
    Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
    Object.Instantiate<T>(T, Transform)
    Object.Instantiate<T>(T, Transform, bool)
    Object.Destroy(Object, float)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, bool)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.FindObjectsOfType(Type, bool)
    Object.FindObjectsByType(Type, FindObjectsSortMode)
    Object.FindObjectsByType(Type, FindObjectsInactive, FindObjectsSortMode)
    Object.DontDestroyOnLoad(Object)
    Object.DestroyObject(Object, float)
    Object.DestroyObject(Object)
    Object.FindSceneObjectsOfType(Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    Object.FindObjectsOfType<T>()
    Object.FindObjectsByType<T>(FindObjectsSortMode)
    Object.FindObjectsOfType<T>(bool)
    Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)
    Object.FindObjectOfType<T>()
    Object.FindObjectOfType<T>(bool)
    Object.FindFirstObjectByType<T>()
    Object.FindAnyObjectByType<T>()
    Object.FindFirstObjectByType<T>(FindObjectsInactive)
    Object.FindAnyObjectByType<T>(FindObjectsInactive)
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    Object.FindFirstObjectByType(Type)
    Object.FindAnyObjectByType(Type)
    Object.FindObjectOfType(Type, bool)
    Object.FindFirstObjectByType(Type, FindObjectsInactive)
    Object.FindAnyObjectByType(Type, FindObjectsInactive)
    Object.ToString()
    Object.name
    Object.hideFlags
    object.Equals(object, object)
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    Namespace: UnityEngine.Rendering.HighDefinition
    Assembly: Unity.RenderPipelines.HighDefinition.Runtime.dll
    Syntax
    [ExecuteAlways]
    public class CustomPassVolume : MonoBehaviour, IVolume

    Fields

    customPasses

    List of custom passes to execute

    Declaration
    [SerializeReference]
    public List<CustomPass> customPasses
    Field Value
    Type Description
    List<CustomPass>

    fadeRadius

    Distance where the volume start to be rendered, the fadeValue field in C# will be updated to the normalized blend factor for your custom C# passes In the fullscreen shader pass and DrawRenderers shaders you can access the _FadeValue

    Declaration
    [Min(0)]
    public float fadeRadius
    Field Value
    Type Description
    float

    injectionPoint

    Where the custom passes are going to be injected in HDRP

    Declaration
    public CustomPassInjectionPoint injectionPoint
    Field Value
    Type Description
    CustomPassInjectionPoint

    priority

    The volume priority, used to determine the execution order when there is multiple volumes with the same injection point.

    Declaration
    [Tooltip("Sets the Volume priority in the stack. A higher value means higher priority. You can use negative values.")]
    public float priority
    Field Value
    Type Description
    float

    Properties

    colliders

    The colliders of the volume if isGlobal is false

    Declaration
    public List<Collider> colliders { get; }
    Property Value
    Type Description
    List<Collider>

    fadeValue

    Fade value between 0 and 1. it represent how close you camera is from the collider of the custom pass. 0 when the camera is outside the volume + fade radius and 1 when it is inside the collider.

    Declaration
    public float fadeValue { get; }
    Property Value
    Type Description
    float

    The fade value that should be applied to the custom pass effect

    isGlobal

    Whether or not the volume is global. If true, the component will ignore all colliders attached to it

    Declaration
    public bool isGlobal { get; set; }
    Property Value
    Type Description
    bool

    targetCamera

    Use this field to force the custom pass volume to be executed only for one camera.

    Declaration
    public Camera targetCamera { get; set; }
    Property Value
    Type Description
    Camera

    Methods

    AddPassOfType(Type)

    Add a pass of type passType in the active pass list

    Declaration
    public CustomPass AddPassOfType(Type passType)
    Parameters
    Type Name Description
    Type passType

    The type of the CustomPass to create

    Returns
    Type Description
    CustomPass

    The new custom

    AddPassOfType<T>()

    Add a pass of type passType in the active pass list

    Declaration
    public CustomPass AddPassOfType<T>() where T : CustomPass
    Returns
    Type Description
    CustomPass

    The new custom

    Type Parameters
    Name Description
    T

    The type of the CustomPass to create

    GetActivePassVolume(CustomPassInjectionPoint)

    Gets the currently active Custom Pass Volume for a given injection point. Note this function returns only the first active volume, not the others that will be executed.

    Declaration
    [Obsolete("In order to support multiple custom pass volume per injection points, please use GetActivePassVolumes.")]
    public static CustomPassVolume GetActivePassVolume(CustomPassInjectionPoint injectionPoint)
    Parameters
    Type Name Description
    CustomPassInjectionPoint injectionPoint

    The injection point to get the currently active Custom Pass Volume for.

    Returns
    Type Description
    CustomPassVolume

    Returns the Custom Pass Volume instance associated with the injection point.

    GetActivePassVolumes(CustomPassInjectionPoint, List<CustomPassVolume>)

    Gets the currently active Custom Pass Volume for a given injection point.

    Declaration
    public static void GetActivePassVolumes(CustomPassInjectionPoint injectionPoint, List<CustomPassVolume> volumes)
    Parameters
    Type Name Description
    CustomPassInjectionPoint injectionPoint

    The injection point to get the currently active Custom Pass Volume for.

    List<CustomPassVolume> volumes

    The list of custom pass volumes to popuplate with the active volumes.

    Implements

    IVolume
    In This Article
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)