D5 Render Version:
2.11.1.016 Graphics Card:
RTX 4090 Driver Version:
Studio 581.29 Issue Description:
Screen flickering during using high amount of clouds with shadows enabled Screenshots/Videos Description:
included
Steps to Reproduce (optional):
Make high amount of clouds with shadows turned on. Probably on reflective surfaces flick(4).zip (2.8 MB)
I just tried it on my test file with maximum clouds, enabled Shadow, and Fog, but still can’t replicate it. Can you send us this specific file? Thanks.
Please send it to support@d5techs.com and have it titled Clov-Forum Screen Flickering during using High Amount of Clouds with Shadows
I tried using lowest settings for GI and reflection without success. Enabling frame generation was good before but when scene was growing, when I added many more object it started to flicker again.
This is not only flickering but while accumulation it can render just like without cloud shadows at all. It looks like cloud shadows are leaks Sunlight.
Finally I found issue ! When I created video to another thread about volume fog issue I noticed something very strange.
While using fully clouded sky Sun is not visible. But when this invisible Sun position is obstructed by object it started to be visible ! In this example
But I have scene when it flicker and Sun is not obstructed by object while looking to it from Camera position. Probably this needs more investigation from D5 technical team - in which situations Sun stays visible from behind clouds. I found first one, probably there is more.
For example - flickering is not visible when D5 screen is very small, when I resize it to very large size it start to flicker.
It looks like Adaptive Scaling off reduce not only image quality on hi-res view but internal lighting accuracy too.
Update :
sometimes it still flicker but not as noticeable as before. Turning on Adaptive Scaling + Frame Generation resolve it in 90% in my situation.
Update 2 :
I was wrong - it doesn’t flicker only after scene loading and using only Amount clouds parameter. Changing other cloud parameters especially Random Seed cause that it start to flicker again.
Unfortunately shadows completely doesn’t work when scene is growing. They flicker or they are completely disabled. Maybe this is related to VRam usage.
This is related to amount of geometry on screen and enabled Adaptive Screen Scalling ( which greatly improve screen quality ) :
To trigger this issue change cloud seed and play with their amount value - especially near 50% when shadows will start to appear. Try to accumulating when you will have them at 100% - shadows gone.
Finally ! I know what is going on here and I have solution. Anyway there is technical issue. @Clov please report this to technical team :
While using Adaptive System Scaling cloud shadows will flicker when D5 screen FPS drop below monitor frame rate. More difference = more flickering.
This is why I noticed that this is related to big projects, ultra-wide screen size using Adaptive System Scaling to compensate this.
Something wrong you have inside D5 cloud shadow. But here is simple workaround :
In Nvidia driver panel or Nvidia App set vertical sync ( full one ) for D5 Render\d5_immerse\Binaries\Win64\d5_immerse.exe
Use D5 FPS Booster or/and Nvidia Frame Generation to increase D5 frame rate to match your monitor refresh rate - 60, 120hz.
or
Set Adaptive ( half resolution ) Vertical Sync for d5_immerse.exe without the need of turning on FPS booster or Frame Generation.
It works with all situation ! Who pay me for investigation
Anyway - D5 must have turned on Vertical Sync for clamping refresh rate to work properly at the moment. If you notice input delay you can resolve it by set Ultra Low Latency Mode in Nvidia panel for d5_immerse.exe
Unfortunately this workaround doesn’t work for monitor refresh screen set above 60hz because final rendering is never faster than 60-80 frames per second even on 5090 in complex scenes - it will always render without cloud shadow visible. So screen refresh rate must be clamped to 60fps.
You have bunch of points on the ground which fire rays to Sun position and checking if these rays are blocked by Clouds volume with frequency set to system display like 60hz, 120hz.
You created array of cells where array has length of screen refresh rate like 60hz and every cell of this array is a frame. You check if array is filled by zero ( ray is not blocked by cloud ) or filled by 1 ( ray is blocked by cloud ).
That’s good and fast. But you have bug inside. If array like 60 cells is not fully filled by 0 or 1 because graphics card can’t fill them all within given by system refresh rate time you have empty cells within this array and algorithm doesn’t work in this situation - it start to flicker because of these empty cells inside 60 cells array.
In my opinion there are two workarounds :
You must create variable array size based on real frame rate ( not system one ) where length of array will be the same as real frame rate produced by graphic card.
Create different algorithm that will be based on timing not framing. Just send rays every 0,5 second to check if they are blocked by cloud shape or not.
Using interpolation it would be great. Cloud shadow accuracy within time is really not as important.
Thank you for your detailed explanation and for breaking down your observations and theory. Your insights are very helpful, particularly your notes on how the issue relates to frame rate, cloud parameters, and screen scaling.
We have shared this information with our team for further investigation. I may need to verify internally whether the root cause aligns with your hypothesis regarding frame-based sampling and performance dependency.