diff options
| author | yum <yum.food.vr@gmail.com> | 2025-11-11 15:47:16 -0800 |
|---|---|---|
| committer | yum <yum.food.vr@gmail.com> | 2025-11-11 15:47:16 -0800 |
| commit | 5cbad6aa884ee4c77f6af65cdfceac987f54a227 (patch) | |
| tree | 0648d2c763841919f7597d94da4a292f106e8ccb /lighting.cginc | |
| parent | a9d68542ce0dede3a9759107b7ae76bedfa62c1e (diff) | |
add clearcoat mask
Diffstat (limited to 'lighting.cginc')
| -rw-r--r-- | lighting.cginc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lighting.cginc b/lighting.cginc index 17f1a0a..8276b8c 100644 --- a/lighting.cginc +++ b/lighting.cginc @@ -163,6 +163,10 @@ void GetLighting(v2f i, Pbr pbr, out LightData data) { float3 view_dir = normalize(i.eyeVec.xyz); +#if defined(_CLEARCOAT_MASK) + float cc_mask = _Clearcoat_Mask.Sample(bilinear_clamp_s, i.uv01.xy).r; +#endif + data.common.V = -view_dir; data.common.N = pbr.normal; data.common.NoV = saturate(dot(pbr.normal, data.common.V)); @@ -205,7 +209,7 @@ void GetLighting(v2f i, Pbr pbr, out LightData data) { data.indirect.diffuse = getIndirectDiffuse(i, pbr, data.indirect); data.indirect.specular = getIndirectSpecular(i, pbr.roughness, view_dir, data.indirect.dir); #if defined(_CLEARCOAT) - data.indirect.specular_cc = getIndirectSpecular(i, pbr.cc_roughness, view_dir, dir_cc); + data.indirect.specular_cc = getIndirectSpecular(i, pbr.cc_roughness, view_dir, dir_cc) * cc_mask; #endif } |
