docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class HDShaderGUI

    Use this class to build your custom Shader GUI for HDRP. You can use a class that inherits from HDShaderGUI in the Shader Graph Custom EditorGUI field.

    Inheritance
    object
    ShaderGUI
    HDShaderGUI
    DecalShaderGraphGUI
    LightingShaderGraphGUI
    UnlitShaderGraphGUI
    Inherited Members
    ShaderGUI.OnMaterialPreviewSettingsGUI(MaterialEditor)
    ShaderGUI.OnClosed(Material)
    ShaderGUI.AssignNewShaderToMaterial(Material, Shader, Shader)
    ShaderGUI.ValidateMaterial(Material)
    ShaderGUI.FindProperty(string, MaterialProperty[])
    ShaderGUI.FindProperty(string, MaterialProperty[], bool)
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: UnityEditor.Rendering.HighDefinition
    Assembly: Unity.RenderPipelines.HighDefinition.Editor.dll
    Syntax
    public abstract class HDShaderGUI : ShaderGUI

    Methods

    OnGUI(MaterialEditor, MaterialProperty[])

    Unity calls this function when it displays the GUI. This method is sealed so you cannot override it. To implement your custom GUI, use OnMaterialGUI instead.

    Declaration
    public override sealed void OnGUI(MaterialEditor materialEditor, MaterialProperty[] props)
    Parameters
    Type Name Description
    MaterialEditor materialEditor

    Material editor instance.

    MaterialProperty[] props

    The list of properties in the inspected material(s).

    Overrides
    ShaderGUI.OnGUI(MaterialEditor, MaterialProperty[])

    OnMaterialGUI(MaterialEditor, MaterialProperty[])

    Implement your custom GUI in this function. To display a UI similar to HDRP shaders, use a MaterialUIBlockList.

    Declaration
    protected abstract void OnMaterialGUI(MaterialEditor materialEditor, MaterialProperty[] props)
    Parameters
    Type Name Description
    MaterialEditor materialEditor

    The current material editor.

    MaterialProperty[] props

    The list of properties in the inspected material(s).

    OnMaterialInteractivePreviewGUI(MaterialEditor, Rect, GUIStyle)

    Override the material interactive preview GUI.

    Declaration
    public override void OnMaterialInteractivePreviewGUI(MaterialEditor materialEditor, Rect r, GUIStyle background)
    Parameters
    Type Name Description
    MaterialEditor materialEditor

    The current material editor.

    Rect r

    Preview rect.

    GUIStyle background

    Style for the background.

    Overrides
    UnityEditor.ShaderGUI.OnMaterialInteractivePreviewGUI(UnityEditor.MaterialEditor, UnityEngine.Rect, UnityEngine.GUIStyle)

    OnMaterialPreviewGUI(MaterialEditor, Rect, GUIStyle)

    Override the material preview GUI.

    Declaration
    public override void OnMaterialPreviewGUI(MaterialEditor materialEditor, Rect r, GUIStyle background)
    Parameters
    Type Name Description
    MaterialEditor materialEditor

    The current material editor.

    Rect r

    Preview rect.

    GUIStyle background

    Style for the background.

    Overrides
    ShaderGUI.OnMaterialPreviewGUI(MaterialEditor, Rect, GUIStyle)

    SetupMaterialKeywordsAndPass(Material)

    Sets up the keywords and passes for the material you pass in as a parameter.

    Declaration
    [Obsolete("SetupMaterialKeywordsAndPass has been renamed ValidateMaterial", false)]
    protected virtual void SetupMaterialKeywordsAndPass(Material material)
    Parameters
    Type Name Description
    Material material

    Target material.

    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)