From 6c1e463a846292a55cf10db772741cea657f298f Mon Sep 17 00:00:00 2001 From: yum Date: Sat, 20 Jul 2024 01:46:51 -0700 Subject: Add second mask to matcaps Useful for PBR overlay. --- tooner_lighting.cginc | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'tooner_lighting.cginc') diff --git a/tooner_lighting.cginc b/tooner_lighting.cginc index 68cfa57..650e66e 100644 --- a/tooner_lighting.cginc +++ b/tooner_lighting.cginc @@ -966,6 +966,15 @@ float4 effect(inout v2f i) #else float matcap_mask = 1; #endif +#if defined(_MATCAP0_MASK2) + { + float4 matcap_mask2_raw = _Matcap0_Mask2.SampleGrad(linear_repeat_s, i.uv.xy, iddx, iddy); + float matcap_mask2 = matcap_mask2_raw.r; + matcap_mask2 = (bool) round(_Matcap0_Mask2_Invert) ? 1 - matcap_mask2 : matcap_mask2; + matcap_mask2 *= matcap_mask2_raw.a; + matcap_mask *= matcap_mask2; + } +#endif int mode = round(_Matcap0Mode); switch (mode) { @@ -1019,6 +1028,15 @@ float4 effect(inout v2f i) #else float matcap_mask = 1; #endif +#if defined(_MATCAP1_MASK2) + { + float4 matcap_mask2_raw = _Matcap1_Mask2.SampleGrad(linear_repeat_s, i.uv.xy, iddx, iddy); + float matcap_mask2 = matcap_mask2_raw.r; + matcap_mask2 = (bool) round(_Matcap1_Mask2_Invert) ? 1 - matcap_mask2 : matcap_mask2; + matcap_mask2 *= matcap_mask2_raw.a; + matcap_mask *= matcap_mask2; + } +#endif int mode = round(_Matcap1Mode); switch (mode) { -- cgit v1.2.3