private void GlobalGradientSettingsModule() { ShowGlobalGradientSettings = EditorGUILayout.Foldout(ShowGlobalGradientSettings, "Global Gradient Settings [Pro only]"); if (ShowGlobalGradientSettings) { EditorGUI.BeginDisabledGroup(true); EditorGUILayout.BeginVertical("box"); { _GradientHeight_G.floatValue = CEditor.FloatField("Height", 80, _GradientHeight_G.floatValue); _GradPivot_G.vectorValue = EditorGUILayout.Vector2Field("Pivot", _GradPivot_G.vectorValue); EditorGUILayout.LabelField("Rotation"); _Rotation_G.floatValue = EditorGUILayout.Slider(_Rotation_G.floatValue, 0f, 360f); } EditorGUILayout.EndVertical(); EditorGUI.EndDisabledGroup(); } }
private void CustomShadingModule( ref bool ShowShading, ref MaterialProperty Show, string ShadingSide, ref ShadingMode ShadingType, ref MaterialProperty ShadeMode, ref MaterialProperty Color1, ref MaterialProperty Color2, ref GradientSettings GradSettings, ref MaterialProperty GradientSettings, ref MaterialProperty GradHeight, ref MaterialProperty GradPivot, ref MaterialProperty Rotation, string shaderKeywordG, string shaderKeywordS, MaterialProperty Gizmopos) { EditorGUILayout.BeginVertical(); { ShowShading = EditorGUILayout.Foldout(ShowShading, ShadingSide); } EditorGUILayout.EndVertical(); if (ShowShading) { Show.floatValue = 1; ShadingType = (ShadingMode)EditorGUILayout.EnumPopup("Shading Mode", ShadingType); ShadeMode.floatValue = (float)ShadingType; if (ShadingType == ShadingMode.VertexColor) { targetMat.DisableKeyword(shaderKeywordS); } else if (ShadingType == ShadingMode.SolidColor) { ColorProperty(Color1, "Color"); targetMat.EnableKeyword(shaderKeywordS); } else if (ShadingType == ShadingMode.Gradient_ProOnly) { EditorGUI.BeginDisabledGroup(true); EditorGUILayout.BeginHorizontal("Box"); { EditorGUILayout.BeginVertical(GUILayout.Width(50)); { Color1.colorValue = EditorGUILayout.ColorField(Color1.colorValue); Color2.colorValue = EditorGUILayout.ColorField(Color2.colorValue); if (GUILayout.Button("Swap")) { } Rect R = EditorGUILayout.GetControlRect(GUILayout.Height(50), GUILayout.Width(50)); if (ShadingSide == TOP || ShadingSide == DOWN) { GUI.DrawTexture(R, GetTexture(Color1.colorValue, Color2.colorValue, true)); } else { GUI.DrawTexture(R, GetTexture(Color1.colorValue, Color2.colorValue, false)); } } EditorGUILayout.EndVertical(); EditorGUILayout.BeginVertical(GUILayout.Width(Screen.width - 112)); { GradSettings = (GradientSettings)EditorGUILayout.EnumPopup("", GradSettings, GUILayout.Width(Screen.width - 110)); GradientSettings.floatValue = (float)GradSettings; EditorGUI.BeginDisabledGroup(IsGlobal(GradSettings)); { EditorGUILayout.BeginHorizontal(); { EditorGUILayout.BeginVertical(GUILayout.Width(Screen.width - 142)); { if (IsGlobal(GradSettings)) { GradHeight.floatValue = CEditor.FloatField("Falloff", 70, _GradientHeight_G.floatValue); EditorGUILayout.LabelField("Pivot", GUILayout.Width(60)); GradPivot.vectorValue = EditorGUILayout.Vector2Field("", _GradPivot_G.vectorValue, GUILayout.Width(Screen.width - 142)); EditorGUILayout.LabelField("Rotation", GUILayout.Width(60)); Rotation.floatValue = EditorGUILayout.Slider(_Rotation_G.floatValue, 0f, 360f, GUILayout.Width(Screen.width - 142)); } else { GradHeight.floatValue = CEditor.FloatField("Falloff", 70, GradHeight.floatValue); EditorGUILayout.LabelField("Pivot", GUILayout.Width(60)); GradPivot.vectorValue = EditorGUILayout.Vector2Field("", GradPivot.vectorValue, GUILayout.Width(Screen.width - 142)); EditorGUILayout.LabelField("Rotation", GUILayout.Width(60)); Rotation.floatValue = EditorGUILayout.Slider(Rotation.floatValue, 0f, 360f, GUILayout.Width(Screen.width - 142)); } } EditorGUILayout.EndVertical(); EditorGUILayout.BeginVertical(); { EditorGUI.BeginDisabledGroup(!isAnythingSelected()); { if (GUILayout.Button(EditorGUIUtility.IconContent("EditCollider", "Edit in Scene"), GUILayout.Height(28))) { } if (GUILayout.Button(EditorGUIUtility.IconContent("TreeEditor.Duplicate"), GUILayout.Height(28))) { } if (GUILayout.Button(EditorGUIUtility.IconContent("Clipboard", "Paste"), GUILayout.Height(28))) { } } EditorGUI.EndDisabledGroup(); } EditorGUILayout.EndVertical(); } EditorGUILayout.EndHorizontal(); } EditorGUI.EndDisabledGroup(); } EditorGUILayout.EndVertical(); } EditorGUILayout.EndHorizontal(); EditorGUI.EndDisabledGroup(); } else { Color1.colorValue = Color.white; Color2.colorValue = Color.white; } } else { Show.floatValue = 0; } }