docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class VolumeParameter<T>

    A generic implementation of VolumeParameter. Custom parameters should derive from this class and implement their own behavior.

    Inheritance
    object
    VolumeParameter
    VolumeParameter<T>
    APVLeakReductionModeParameter
    AnimationCurveParameter
    BoolParameter
    ColorParameter
    CubemapParameter
    EnumParameter<T>
    FloatParameter
    FloatRangeParameter
    IntParameter
    LayerMaskParameter
    MaterialParameter
    NoInterpClampedFloatParameter
    NoInterpClampedIntParameter
    NoInterpColorParameter
    NoInterpCubemapParameter
    NoInterpFloatParameter
    NoInterpFloatRangeParameter
    NoInterpIntParameter
    NoInterpMaxFloatParameter
    NoInterpMaxIntParameter
    NoInterpMinFloatParameter
    NoInterpMinIntParameter
    NoInterpRenderTextureParameter
    NoInterpTextureParameter
    NoInterpVector2Parameter
    NoInterpVector3Parameter
    NoInterpVector4Parameter
    ObjectParameter<T>
    RenderTextureParameter
    RenderingLayerMaskParameter
    Texture2DParameter
    Texture3DParameter
    TextureCurveParameter
    TextureGradientParameter
    TextureParameter
    Vector2Parameter
    Vector3Parameter
    Vector4Parameter
    Implements
    ICloneable
    IEquatable<VolumeParameter<T>>
    Inherited Members
    VolumeParameter.k_DebuggerDisplay
    VolumeParameter.m_OverrideState
    VolumeParameter.overrideState
    VolumeParameter.GetValue<T>()
    VolumeParameter.OnEnable()
    VolumeParameter.OnDisable()
    VolumeParameter.IsObjectParameter(Type)
    VolumeParameter.Release()
    object.Equals(object, object)
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    Namespace: UnityEngine.Rendering
    Assembly: Unity.RenderPipelines.Core.Runtime.dll
    Syntax
    [Serializable]
    public class VolumeParameter<T> : VolumeParameter, ICloneable, IEquatable<VolumeParameter<T>>
    Type Parameters
    Name Description
    T

    The type of value to hold in this parameter.

    Remarks

    T should a serializable type. Due to limitations with the serialization system in Unity, you should not use this class directly to declare parameters in a VolumeComponent. Instead, use one of the pre-flatten types (like FloatParameter, or make your own by extending this class.

    Examples

    This sample code shows how to make a custom parameter holding a float:

    using UnityEngine.Rendering;
    

    [Serializable] public sealed class MyFloatParameter : VolumeParameter<float> { public MyFloatParameter(float value, bool overrideState = false) : base(value, overrideState) { }

    public sealed override void Interp(float from, float to, float t)
    {
        m_Value = from + (to - from) * t;
    }
    

    }

    Constructors

    VolumeParameter()

    Creates a new VolumeParameter<T> instance.

    Declaration
    public VolumeParameter()
    See Also
    VolumeParameter

    VolumeParameter(T, bool)

    Creates a new VolumeParameter<T> instance.

    Declaration
    protected VolumeParameter(T value, bool overrideState = false)
    Parameters
    Type Name Description
    T value

    The initial value to store in the parameter.

    bool overrideState

    The initial override state for the parameter.

    See Also
    VolumeParameter

    Fields

    m_Value

    The value stored and serialized by this parameter.

    Declaration
    [SerializeField]
    protected T m_Value
    Field Value
    Type Description
    T
    See Also
    VolumeParameter

    Properties

    value

    The value that this parameter stores.

    Declaration
    public virtual T value { get; set; }
    Property Value
    Type Description
    T
    Remarks

    You can override this property to define custom behaviors when the value is changed.

    See Also
    VolumeParameter

    Methods

    Clone()

    Clones the current instance of the VolumeParameter

    Declaration
    public override object Clone()
    Returns
    Type Description
    object

    A new created instance with the same values as the current instance of VolumeParameter

    Overrides
    VolumeParameter.Clone()
    See Also
    VolumeParameter

    Equals(object)

    Determines whether two object instances are equal.

    Declaration
    public override bool Equals(object obj)
    Parameters
    Type Name Description
    object obj

    The object to compare with the current object.

    Returns
    Type Description
    bool

    true if the specified object is equal to the current object, false otherwise.

    Overrides
    object.Equals(object)
    See Also
    VolumeParameter

    Equals(VolumeParameter<T>)

    Checks if this parameter is equal to another.

    Declaration
    public bool Equals(VolumeParameter<T> other)
    Parameters
    Type Name Description
    VolumeParameter<T> other

    The other parameter to check against.

    Returns
    Type Description
    bool

    true if both parameters are equal, false otherwise

    See Also
    VolumeParameter

    GetHashCode()

    Returns a hash code for the current object.

    Declaration
    public override int GetHashCode()
    Returns
    Type Description
    int

    A hash code for the current object.

    Overrides
    object.GetHashCode()
    See Also
    VolumeParameter

    Interp(T, T, float)

    Interpolates two values using a factor t.

    Declaration
    public virtual void Interp(T from, T to, float t)
    Parameters
    Type Name Description
    T from

    The start value.

    T to

    The end value.

    float t

    The interpolation factor in range [0,1].

    Remarks

    By default, this method does a "snap" interpolation, meaning it returns the value to if t is higher than 0, and from otherwise.

    See Also
    VolumeParameter

    Override(T)

    Sets the value for this parameter and sets its override state to true.

    Declaration
    public void Override(T x)
    Parameters
    Type Name Description
    T x

    The value to assign to this parameter.

    See Also
    VolumeParameter

    SetValue(VolumeParameter)

    Sets the value of this parameter to the value in parameter.

    Declaration
    public override void SetValue(VolumeParameter parameter)
    Parameters
    Type Name Description
    VolumeParameter parameter

    The VolumeParameter to copy the value from.

    Overrides
    VolumeParameter.SetValue(VolumeParameter)
    See Also
    VolumeParameter

    ToString()

    Returns a string that represents the current object.

    Declaration
    public override string ToString()
    Returns
    Type Description
    string

    A string that represents the current object.

    Overrides
    object.ToString()
    See Also
    VolumeParameter

    Operators

    operator ==(VolumeParameter<T>, T)

    Compares the value in a parameter with another value of the same type.

    Declaration
    public static bool operator ==(VolumeParameter<T> lhs, T rhs)
    Parameters
    Type Name Description
    VolumeParameter<T> lhs

    The first value in a VolumeParameter.

    T rhs

    The second value.

    Returns
    Type Description
    bool

    true if both values are equal, false otherwise.

    See Also
    VolumeParameter

    explicit operator T(VolumeParameter<T>)

    Explicitly downcast a VolumeParameter<T> to a value of type T.

    Declaration
    public static explicit operator T(VolumeParameter<T> prop)
    Parameters
    Type Name Description
    VolumeParameter<T> prop

    The parameter to downcast.

    Returns
    Type Description
    T

    A value of type T.

    See Also
    VolumeParameter

    operator !=(VolumeParameter<T>, T)

    Compares the value store in a parameter with another value of the same type.

    Declaration
    public static bool operator !=(VolumeParameter<T> lhs, T rhs)
    Parameters
    Type Name Description
    VolumeParameter<T> lhs

    The first value in a VolumeParameter.

    T rhs

    The second value.

    Returns
    Type Description
    bool

    false if both values are equal, true otherwise

    See Also
    VolumeParameter

    Implements

    ICloneable
    IEquatable<T>

    Extension Methods

    ReflectionUtils.GetField(object, string)
    ReflectionUtils.GetFields(object)
    ReflectionUtils.Invoke(object, string, params object[])
    ReflectionUtils.SetField(object, string, object)
    AnalyticsUtils.ToNestedColumnWithDefault<T>(T, T, bool)
    AnalyticsUtils.ToNestedColumn<T>(T, bool)
    AnalyticsUtils.ToNestedColumn<T>(T, T)

    See Also

    VolumeParameter
    In This Article
    Back to top
    Copyright © 2024 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)