I’m using Ultra Dynamic Sky in a project with runtime-driven, dynamic fog (visual range can change at runtime from clear to very dense). The problem: when fog is dense (e.g. 3m visual range), the background volumetric clouds still shine/flicker through the fog instead of being fully obscured, which looks physically wrong — in real dense fog, distant clouds shouldn’t be visible at all.
Unreal version: 5.2
I am using an separately spawned Exponential Height Fog component, since with other settings or directly using Fog from UDS I was not able to create really dense fog.
I’m open to any solution that fixes this shine-through/flicker, not just hiding the clouds outright. For example:
- A way to make height fog properly occlude/obscure the volumetric cloud layer at high density, so clouds are naturally masked instead of shining through.
- Alternatively, a supported way to fully hide/disable just the volumetric cloud layer at runtime when visibility is low, while keeping fog, cloud shadows, and sun lighting correct (I do not want to have suddenly a really bright scene even if clouds are set to high opacity).
- Any insight into why clouds and height fog don’t composite correctly together at high fog density in the first place — this might point to a rendering order/setting issue I’m missing.
What I’ve tried so far
- Setting
CloudCoverageto 0 — hides clouds but also resets UDS to a “sunny” lighting/fog state. - Toggling generic component visibility on sky/cloud actors — hides clouds but also kills the fog.
- Manually attenuating sun intensity/shadows to fake the effect of clouds without rendering them — inconsistent results vs. actual UDS lighting.
- Reflection-based access to UDS’s internal “Directional Light Dimming”/cloud shadow functions — partially works but fragile and version-specific.
- Runtime holdout (
SetHoldout) on the cloud component — not exposed in this engine version. - Runtime sphere occluder around the camera — visual/material and cloud-shadow-ordering issues, not reliable.
- Camera far-clip / fog cutoff distance to hide distant clouds — doesn’t work, since clouds/sky render in a separate atmosphere pass independent of scene depth culling.