New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
High frame delay causes rendering issues with auto exposure enabled [GLES3] #22463
Comments
I doubt this is an engine issue, this must be related to the way you cache resources in the title scene and maybe add them to the scene tree (thus making them potentially visible) before the GUI is initialized on top of them. Edit: Scratch that, further debugging proved that it's related to per pixel transparency. |
I can confirm that, specifically the auto-exposure of WorldEnvironment. I often experience this effect when the debugger catches some error immediately after scene startup, or even worse when the frame rate drops significantly. |
Isolated to this minial project. Took a while since I was stripping down my production code. It is triggered in my case by:
|
CC @bruvzg |
Please note that I seen this effect without disabling per pixel transparency. It is a trigger, not a cause. |
Do you see it if you don't use per pixel transparency at all? |
Yes. One way to trigger it without per-pixel transparency is to use Multi-Threaded or Single-Unsafe rendering model. I have bug report of these artifacts happening when recording dV with OBS, but I was unable to replicate. |
I gave the issue some thought and I have a hypothesis. There are two separate things happening:
|
@Xrayez this issue was fixed for me with install of KB4462933 OS Build 17134.376 via Windows Update. Could you cross-check? |
@lekoder just installed mentioned update manually, this hasn't fixed the issue for me, maybe it was due to graphics driver update? Btw, this auto-exposure issue can be easily reproduced with:
This simulates high CPU load and introduces enough delay. |
Might be, those things are tough to replicate if we don't know what exactly is triggering it - and I don't pay close attention to it, as I worked around it in my game. I assume the underlying problem is freezing for significant fractions of a second. |
So it seems to be driver-specific in the end? |
Not sure, doesn't seem so, this is still reproducible in master in my own project. Upon further testing, I managed to create a minimal project (3.1): The sprite will appear white if enough delay is introduced: By enough I mean that the delay has to be as twice longer than the auto exposure speed! The default auto exposure speed is 0.5 sec, so 1 sec delay is the minimum time to cause the issue. |
Setting |
Still reproducible in the current master branch with @Xrayez's minimal project. |
It seems to only happen with the GLES3 driver, not GLES2. |
Godot version:
3.1.alpha 5a03d50
OS/device including version:
Windows 10
GPU: NVIDIA GeForce GTX 1070 MQ, driver: 411.63
GPU: Interl UHD Graphics 630
Issue description:
When game starts, just as first scene renders, it appears for a brief second frozen, with distorted colors:
Steps to reproduce:
Unable to reproduce in minimal project. Issue can be observed with demo version of ΔV: Rings of Saturn 0.20.0, available on itch.io - observed with windows builds.
It might be related to loading resources and auto-exposure of
WorldEnvironment
. Going to work around it by providing blank/black initial scene.The text was updated successfully, but these errors were encountered: