From 182e51776a51977d480ac19e668d3c209e601766 Mon Sep 17 00:00:00 2001 From: yum Date: Thu, 17 Oct 2024 16:06:31 -0700 Subject: Add toggle for unity fog --- Editor/tooner.cs | 8 ++++++++ feature_macros.cginc | 1 + pbr.cginc | 2 ++ tooner.shader | 1 + 4 files changed, 12 insertions(+) diff --git a/Editor/tooner.cs b/Editor/tooner.cs index 3c0b951..028b971 100644 --- a/Editor/tooner.cs +++ b/Editor/tooner.cs @@ -2327,6 +2327,14 @@ public class ToonerGUI : ShaderGUI { EditorGUI.indentLevel -= 1; } + bc = FindProperty("_Enable_Unity_Fog"); + enabled = bc.floatValue > 1E-6; + EditorGUI.BeginChangeCheck(); + enabled = Toggle("Enable Unity fog", enabled); + EditorGUI.EndChangeCheck(); + bc.floatValue = enabled ? 1.0f : 0.0f; + SetKeyword("_UNITY_FOG", enabled); + LabelField("Stenciling", EditorStyles.boldLabel); for (int i = 0; i < 2; i++) { EditorGUI.indentLevel += 1; diff --git a/feature_macros.cginc b/feature_macros.cginc index fa4e2c9..ff5c99f 100644 --- a/feature_macros.cginc +++ b/feature_macros.cginc @@ -170,6 +170,7 @@ #pragma shader_feature_local _ _GIMMICK_FOG_00_EMITTER_TEXTURE #pragma shader_feature_local _ _GIMMICK_FOG_00_EMITTER_1 #pragma shader_feature_local _ _GIMMICK_FOG_00_EMITTER_2 +#pragma shader_feature_local _ _UNITY_FOG #endif // __FEATURE_MACROS_INC diff --git a/pbr.cginc b/pbr.cginc index c53a156..d575093 100644 --- a/pbr.cginc +++ b/pbr.cginc @@ -462,7 +462,9 @@ float4 getLitColor( #endif #endif +#if defined(_UNITY_FOG) UNITY_APPLY_FOG(i.fogCoord, pbr.rgb); +#endif return float4(pbr.rgb, albedo.a); } diff --git a/tooner.shader b/tooner.shader index 72567a2..2ddfb41 100644 --- a/tooner.shader +++ b/tooner.shader @@ -252,6 +252,7 @@ Shader "yum_food/tooner" _Explode_Phase("Explode phase", Range(0, 1)) = 0 [Enum(UnityEngine.Rendering.CullMode)] _OutlinesCull ("Outlines pass culling mode", Float) = 1 [Enum(UnityEngine.Rendering.CullMode)] _Cull ("Culling mode", Float) = 2 + _Enable_Unity_Fog("Enable Unity fog", Float) = 1 _Stencil_Ref_Base("Stencil ref", Float) = 1 [Enum(UnityEngine.Rendering.CompareFunction)] _Stencil_Comp_Base("Stencil compare", Float) = 0 // Disabled -- cgit v1.2.3