From 82b36c1c14013e82e15ca48dc766eb7aa4198e63 Mon Sep 17 00:00:00 2001 From: yum Date: Thu, 18 Jul 2024 15:23:14 -0700 Subject: Add individual lighting multipliers ... for direct, indirect x {specular,diffuse} --- Editor/tooner.cs | 36 +++++++++++++++++++++++++++++------- 1 file changed, 29 insertions(+), 7 deletions(-) (limited to 'Editor') diff --git a/Editor/tooner.cs b/Editor/tooner.cs index a3af66c..78b9a51 100644 --- a/Editor/tooner.cs +++ b/Editor/tooner.cs @@ -1087,11 +1087,6 @@ public class ToonerGUI : ShaderGUI { } MaterialProperty bc; - bc = FindProperty("_Render_Queue_Offset"); - editor.IntegerProperty( - bc, - "Render queue offset"); - int queue_offset = bc.intValue; EditorGUI.BeginChangeCheck(); mode = (RenderingMode) EditorGUILayout.EnumPopup( @@ -1099,9 +1094,16 @@ public class ToonerGUI : ShaderGUI { BlendMode src_blend = BlendMode.One; BlendMode dst_blend = BlendMode.Zero; bool zwrite = false; + EditorGUI.EndChangeCheck(); + RecordAction("Rendering mode"); - if (EditorGUI.EndChangeCheck()) { - RecordAction("Rendering mode"); + bc = FindProperty("_Render_Queue_Offset"); + editor.IntegerProperty( + bc, + "Render queue offset"); + int queue_offset = bc.intValue; + + { SetKeyword("_RENDERING_CUTOUT", mode == RenderingMode.Cutout); SetKeyword("_RENDERING_FADE", mode == RenderingMode.Fade); SetKeyword("_RENDERING_TRANSPARENT", mode == RenderingMode.Transparent); @@ -1146,6 +1148,7 @@ public class ToonerGUI : ShaderGUI { zwrite = true; break; } + foreach (Material m in editor.targets) { m.renderQueue = ((int) queue) + queue_offset; m.SetOverrideTag("RenderType", render_type); @@ -1216,6 +1219,25 @@ public class ToonerGUI : ShaderGUI { bc, "Lighting multiplier"); + { + EditorGUI.indentLevel += 1; + bc = FindProperty("_Direct_Lighting_Factor"); + editor.RangeProperty( + bc, + "Direct multiplier"); + + bc = FindProperty("_Indirect_Specular_Lighting_Factor"); + editor.RangeProperty( + bc, + "Indirect specular multiplier"); + + bc = FindProperty("_Indirect_Diffuse_Lighting_Factor"); + editor.RangeProperty( + bc, + "Indirect diffuse multiplier"); + EditorGUI.indentLevel -= 1; + } + bc = FindProperty("_Reflection_Probe_Saturation"); editor.RangeProperty( bc, -- cgit v1.2.3