-
-
Notifications
You must be signed in to change notification settings - Fork 22k
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
Multiple ReflectionProbe with UPDATE_ALWAYS
crashes Godot
#85829
Comments
Tested and reproducible on linux fedora too. In my case it does not render even one frame. |
had a look at this, still not sure what is going on but i thought maybe i can share my findings anyway. first i was able to reproduce with 3 reflection probes with these steps:
I have an MRP for this with steps 1 and 2 already done, step 3 should complete the crash. With only 3 probes it seems that the code uses single threaded behaviour for rendering probes which probably makes things easier to debug. specifically in renderer_scene_cull.cpp, in the call to
the call to A -> B -> C ... and so on. the first node of the list is processed in |
UPDATE_ALWAYS
crashes godot
UPDATE_ALWAYS
crashes godotUPDATE_ALWAYS
crashes Godot
I can't reproduce this on 4.5.dev 28102e6 (Linux, GeForce RTX 4090 with NVIDIA 570.86.16), both in the editor and when running the project (I've tested both scenes). I've also tried following the steps from #85829 (comment) and couldn't get it to crash either. This was likely fixed by #84976, closing. Please comment if you can reproduce this on the latest Godot version. |
Tested versions
System information
Godot v4.2.stable - Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3090 (NVIDIA; 31.0.15.3713) - Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz (16 Threads)
Issue description
If multiple reflection probes see each other, one of those probes may be added to the linked list


While the Main Thread is locked within
_render_reflection_probe_step
:The WorkerThreadPool will render the probe, and enqueue more probes into the list, which seems to create a cycle about 6-8 probes long.
Steps to reproduce
refl_probe_update_once.tscn
loads fine.refl_probe_crasher_simple.tscn
which is the same scene but all probes are set toUPDATE_ALWAYS
Minimal reproduction project (MRP)
reflection_probe_update_always_crash.zip
The text was updated successfully, but these errors were encountered: