summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--2ner.shader16
-rw-r--r--decals.cginc12
2 files changed, 12 insertions, 16 deletions
diff --git a/2ner.shader b/2ner.shader
index 4420ac0..558109d 100644
--- a/2ner.shader
+++ b/2ner.shader
@@ -425,7 +425,7 @@ Shader "yum_food/2ner"
//ifex _Decal0_SDF_SSN_Enabled==0
[HideInInspector] m_start_Decal0_SSN("Screen space normals", Float) = 0
[ThryToggle(_DECAL0_SDF_SSN)] _Decal0_SDF_SSN_Enabled("Enable", Float) = 0
- _Decal0_SDF_SSN_Strength("Strength", Float) = 0.1
+ _Decal0_SDF_SSN_Strength("Strength", Range(0, 10)) = 1
[HideInInspector] m_end_Decal0_SSN("Screen space normals", Float) = 0
//endex
//ifex _Decal0_CMYK_Warping_Planes_Enabled==0
@@ -510,7 +510,7 @@ Shader "yum_food/2ner"
//ifex _Decal1_SDF_SSN_Enabled==0
[HideInInspector] m_start_Decal1_SSN("Screen space normals", Float) = 0
[ThryToggle(_DECAL1_SDF_SSN)] _Decal1_SDF_SSN_Enabled("Enable", Float) = 0
- _Decal1_SDF_SSN_Strength("Strength", Float) = 0.1
+ _Decal1_SDF_SSN_Strength("Strength", Range(0, 10)) = 1
[HideInInspector] m_end_Decal1_SSN("Screen space normals", Float) = 0
//endex
//ifex _Decal1_CMYK_Warping_Planes_Enabled==0
@@ -595,7 +595,7 @@ Shader "yum_food/2ner"
//ifex _Decal2_SDF_SSN_Enabled==0
[HideInInspector] m_start_Decal2_SSN("Screen space normals", Float) = 0
[ThryToggle(_DECAL2_SDF_SSN)] _Decal2_SDF_SSN_Enabled("Enable", Float) = 0
- _Decal2_SDF_SSN_Strength("Strength", Float) = 0.1
+ _Decal2_SDF_SSN_Strength("Strength", Range(0, 10)) = 1
[HideInInspector] m_end_Decal2_SSN("Screen space normals", Float) = 0
//endex
//ifex _Decal2_CMYK_Warping_Planes_Enabled==0
@@ -680,7 +680,7 @@ Shader "yum_food/2ner"
//ifex _Decal3_SDF_SSN_Enabled==0
[HideInInspector] m_start_Decal3_SSN("Screen space normals", Float) = 0
[ThryToggle(_DECAL3_SDF_SSN)] _Decal3_SDF_SSN_Enabled("Enable", Float) = 0
- _Decal3_SDF_SSN_Strength("Strength", Float) = 0.1
+ _Decal3_SDF_SSN_Strength("Strength", Range(0, 10)) = 1
[HideInInspector] m_end_Decal3_SSN("Screen space normals", Float) = 0
//endex
//ifex _Decal3_CMYK_Warping_Planes_Enabled==0
@@ -765,7 +765,7 @@ Shader "yum_food/2ner"
//ifex _Decal4_SDF_SSN_Enabled==0
[HideInInspector] m_start_Decal4_SSN("Screen space normals", Float) = 0
[ThryToggle(_DECAL4_SDF_SSN)] _Decal4_SDF_SSN_Enabled("Enable", Float) = 0
- _Decal4_SDF_SSN_Strength("Strength", Float) = 0.1
+ _Decal4_SDF_SSN_Strength("Strength", Range(0, 10)) = 1
[HideInInspector] m_end_Decal4_SSN("Screen space normals", Float) = 0
//endex
//ifex _Decal4_CMYK_Warping_Planes_Enabled==0
@@ -850,7 +850,7 @@ Shader "yum_food/2ner"
//ifex _Decal5_SDF_SSN_Enabled==0
[HideInInspector] m_start_Decal5_SSN("Screen space normals", Float) = 0
[ThryToggle(_DECAL5_SDF_SSN)] _Decal5_SDF_SSN_Enabled("Enable", Float) = 0
- _Decal5_SDF_SSN_Strength("Strength", Float) = 0.1
+ _Decal5_SDF_SSN_Strength("Strength", Range(0, 10)) = 1
[HideInInspector] m_end_Decal5_SSN("Screen space normals", Float) = 0
//endex
//ifex _Decal5_CMYK_Warping_Planes_Enabled==0
@@ -935,7 +935,7 @@ Shader "yum_food/2ner"
//ifex _Decal6_SDF_SSN_Enabled==0
[HideInInspector] m_start_Decal6_SSN("Screen space normals", Float) = 0
[ThryToggle(_DECAL6_SDF_SSN)] _Decal6_SDF_SSN_Enabled("Enable", Float) = 0
- _Decal6_SDF_SSN_Strength("Strength", Float) = 0.1
+ _Decal6_SDF_SSN_Strength("Strength", Range(0, 10)) = 1
[HideInInspector] m_end_Decal6_SSN("Screen space normals", Float) = 0
//endex
//ifex _Decal6_CMYK_Warping_Planes_Enabled==0
@@ -1020,7 +1020,7 @@ Shader "yum_food/2ner"
//ifex _Decal7_SDF_SSN_Enabled==0
[HideInInspector] m_start_Decal7_SSN("Screen space normals", Float) = 0
[ThryToggle(_DECAL7_SDF_SSN)] _Decal7_SDF_SSN_Enabled("Enable", Float) = 0
- _Decal7_SDF_SSN_Strength("Strength", Float) = 0.1
+ _Decal7_SDF_SSN_Strength("Strength", Range(0, 10)) = 1
[HideInInspector] m_end_Decal7_SSN("Screen space normals", Float) = 0
//endex
//ifex _Decal7_CMYK_Warping_Planes_Enabled==0
diff --git a/decals.cginc b/decals.cginc
index 4161b2c..bb4a0bd 100644
--- a/decals.cginc
+++ b/decals.cginc
@@ -157,7 +157,7 @@ float4 getCmykWarpingPlanesColor(DecalParams params, float2 uv) {
}
// Calculate normal vector from an SDF using screen-space derivatives.
-float3 applyDecalSdfSsn(DecalParams params, float2 decal_uv, float4 decal_albedo) {
+float3 calculateSdfSsn(DecalParams params, float2 decal_uv, float4 decal_albedo) {
float sdf_val = params.mainTex.SampleBias(trilinear_aniso4_repeat_s, decal_uv, params.mip_bias).r;
sdf_val = params.sdf_invert ? 1 - sdf_val : sdf_val;
@@ -169,12 +169,8 @@ float3 applyDecalSdfSsn(DecalParams params, float2 decal_uv, float4 decal_albedo
float det = uv_dx.x * uv_dy.y - uv_dx.y * uv_dy.x;
float2 sdf_grad_uv;
- if (abs(det) < 1e-6) {
- sdf_grad_uv = float2(0,0);
- } else {
- sdf_grad_uv.x = (sdf_dx * uv_dy.y - sdf_dy * uv_dx.y) / det;
- sdf_grad_uv.y = (sdf_dy * uv_dx.x - sdf_dx * uv_dy.x) / det;
- }
+ sdf_grad_uv.x = (sdf_dx * uv_dy.y - sdf_dy * uv_dx.y) / det;
+ sdf_grad_uv.y = (sdf_dy * uv_dx.x - sdf_dx * uv_dy.x) / det;
float2 scaled_grad = sdf_grad_uv * params.sdf_ssn_strength * decal_albedo.a * params.opacity;
@@ -267,7 +263,7 @@ float3 applyDecalSdfSsn(DecalParams params, float2 decal_uv, float4 decal_albedo
#define APPLY_DECAL_SDF_SSN_ON(i, albedo, normal_tangent, metallic, smoothness, emission, params) \
{ \
- float3 sdf_normal_ts = applyDecalSdfSsn(params, decal_uv, decal_albedo); \
+ float3 sdf_normal_ts = calculateSdfSsn(params, decal_uv, decal_albedo); \
normal_tangent = blendNormalsHill12(normal_tangent, sdf_normal_ts); \
}