using Misaki.ShaderGUI; using UnityEditor; using UnityEngine; namespace Misaki.HdrpToon.Editor { public class UTSShaderGUI : ScopedShaderGUI { private GUIStyle _headerStyle; public override void ValidateMaterial(Material material) { UTSAPI.SetupPass(material); UTSAPI.SetupKeywords(material); UTSAPI.SetupProperties(material); } public override void OnGUI(MaterialEditor materialEditor, MaterialProperty[] properties) { if (!initialized) { OnInitialize(materialEditor, properties); } EditorGUILayout.Space(10); EditorGUILayout.LabelField("HDRP Toon Shader", _headerStyle); EditorGUILayout.Space(20); DrawShaderGUI(properties); } private void OnInitialize(MaterialEditor materialEditor, MaterialProperty[] properties) { AddUIScope(); AddUIScope(); AddUIScope(); AddUIScope(); AddUIScope(); // Surface Features AddUIScope(); AddUIScope(); AddUIScope(); AddUIScope(); AddUIScope(); Initialize(materialEditor, properties); _headerStyle = new GUIStyle() { fontSize = 25, fontStyle = FontStyle.Bold, alignment = TextAnchor.MiddleCenter, normal = { textColor = GUI.skin.label.normal.textColor } }; } } }