docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class VolumeParameterDrawer

    A base class to implement to draw custom editors for custom VolumeParameter. You must use a VolumeParameterDrawerAttribute to let the editor know which parameter this drawer is for.

    Inheritance
    object
    VolumeParameterDrawer
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: UnityEditor.Rendering
    Assembly: Unity.RenderPipelines.Core.Editor.dll
    Syntax
    public abstract class VolumeParameterDrawer
    Remarks

    If you do not provide a custom editor for a VolumeParameter, Unity uses the buil-in property drawers to draw the property as-is.

    Examples

    Here's an example about how ClampedFloatParameter is implemented:

    [VolumeParameterDrawer(typeof(ClampedFloatParameter))]
    class ClampedFloatParameterDrawer : VolumeParameterDrawer
    {
        public override bool OnGUI(SerializedDataParameter parameter, GUIContent title)
        {
            var value = parameter.value;
    
        if (value.propertyType != SerializedPropertyType.Float)
            return false;
    
        var o = parameter.GetObjectRef<ClampedFloatParameter>();
        EditorGUILayout.Slider(value, o.min, o.max, title);
        value.floatValue = Mathf.Clamp(value.floatValue, o.min, o.max);
        return true;
    }
    

    }

    Methods

    IsAutoProperty()

    Override this and return false if you want to customize the position of the override checkbox. If you don't, Unity automatically draws the checkbox and puts the property content in a horizontal scope.

    Declaration
    public virtual bool IsAutoProperty()
    Returns
    Type Description
    bool

    false if the override checkbox position is customized, true otherwise

    See Also
    VolumeParameterDrawerAttribute

    OnGUI(SerializedDataParameter, GUIContent)

    Draws the parameter in the editor. If the input parameter is invalid you should return false so that Unity displays the default editor for this parameter.

    Declaration
    public abstract bool OnGUI(SerializedDataParameter parameter, GUIContent title)
    Parameters
    Type Name Description
    SerializedDataParameter parameter

    The parameter to draw.

    GUIContent title

    The label and tooltip of the parameter.

    Returns
    Type Description
    bool

    true if the input parameter is valid, false otherwise in which case Unity will revert to the default editor for this parameter

    See Also
    VolumeParameterDrawerAttribute

    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, T)

    See Also

    VolumeParameterDrawerAttribute
    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)