summaryrefslogtreecommitdiffstats
path: root/fog.cginc
diff options
context:
space:
mode:
authoryum <yum.food.vr@gmail.com>2024-11-08 15:39:47 -0800
committeryum <yum.food.vr@gmail.com>2024-11-08 15:39:47 -0800
commit7bf58ccf65a280f1e7b4a2a40fb28a2cdbaf606c (patch)
treed2c840ccc37a928a400c77577c0f6734f0e1c77c /fog.cginc
parent16a913ebc0d249d0e119acdb1dc9edbc9895063f (diff)
Tweak fog diffuse
Average LODs 9 and 11.
Diffstat (limited to 'fog.cginc')
-rw-r--r--fog.cginc16
1 files changed, 10 insertions, 6 deletions
diff --git a/fog.cginc b/fog.cginc
index 9c27af3..7e3d466 100644
--- a/fog.cginc
+++ b/fog.cginc
@@ -131,15 +131,19 @@ void getEmitterData(float3 p,
direct = in_range * emitter_falloff * em_color;
- diffuse = _Gimmick_Fog_00_Emitter_Texture.SampleLevel(linear_clamp_s, emitter_uv, 10);
+#if 1
+ diffuse =
+ _Gimmick_Fog_00_Emitter_Texture.SampleLevel(linear_clamp_s, emitter_uv, 9)+
+ _Gimmick_Fog_00_Emitter_Texture.SampleLevel(linear_clamp_s, emitter_uv, 11);
+ diffuse *= .5;
em_loc_clamp += em_loc;
-#if 0
- float diffuse_falloff = min(1, 5 / dot(p - em_loc_clamp, p - em_loc_clamp));
-#else
// TODO parameterize shaping constants
- float diffuse_falloff = min(5, 4 / length(p - em_loc_clamp));
-#endif
+ float diffuse_length = length(p - em_loc_clamp);
+ float diffuse_falloff = min(2, 5 / diffuse_length);
diffuse *= diffuse_falloff;
+#else
+ diffuse = 0;
+#endif
}
#endif // defined(_GIMMICK_FOG_00_EMITTER_TEXTURE)