Fix DDGI cascade offset towards bottom that was too intense making probes flicker

This commit is contained in:
Wojtek Figat
2025-12-20 23:44:56 +01:00
parent c2c92eba82
commit fa38f0ac91

View File

@@ -366,7 +366,7 @@ bool DynamicDiffuseGlobalIlluminationPass::RenderInner(RenderContext& renderCont
const Float3 probesDistance = Float3(probesCounts) * cascadeProbesSpacing;
const float probesDistanceMax = probesDistance.MaxValue();
const Float3 viewRayHit = CollisionsHelper::LineHitsBox(viewOrigin, viewOrigin + viewDirection * (probesDistanceMax * 2.0f), viewOrigin - probesDistance, viewOrigin + probesDistance);
const float viewOriginOffset = viewRayHit.Y * probesDistanceMax * 0.6f;
const float viewOriginOffset = viewRayHit.Y * probesDistanceMax * 0.4f;
viewOrigin += viewDirection * viewOriginOffset;
const float viewOriginSnapping = cascadeProbesSpacing;
viewOrigin = Float3::Floor(viewOrigin / viewOriginSnapping) * viewOriginSnapping;