Upgrade SDFGI to HDDAGI#119869
Conversation
Supersedes godotengine#86007 This is a new global illumination system that is a full upgrade to SDFGI Key advantages are: * Significantly faster base frame time. * An order of magnitude faster updates (SDFGI drops frames very significantly when moving, as a consequence of having to redo its entire SDF even for a small motion). * Higher quality (less light leaks, properly energy conservation, much better reflections, others) * Occlusion remains the same as in SDFGI. I experimented with other systems (the one in DDGI) but everything has worse tradeoffs. It is meant as a drop-in replacement, so games using SDFGI should get HDDAGI transparently. TODO: - [ ] For some reason gets DEVICE LOST on Intel GPUs. Can´t figure out why. - [ ] Waiting for a PR fixing the normal buffer precision in order to fix some issues. TODO AFTER MERGING: - [ ] High density probes support. - [ ] Dynamic objects support. Known issues: Fixes to divergent control flow on Intel. Restore the Y Scale as a cascade layout setting. Fixed Volumetric Fog Moved some of the code back where it moved previously. Restored Dynamic GI options in Environment. Fixed non-VRS option selection in shader variant generaton
…issues when HDDAGI is not enabled.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as off-topic.
This comment was marked as off-topic.
|
@DeanLemans Please don't hop into the comments just to be argumentative. Stay on topic so that the PR can actually move forward |
|
Hello, I'm sharing this just in case it's useful, because their GI solution looks very similar to HDDAGI, as they use HDDA too |
|
iirc, one of Juan's ideas was to add a screen-space buffer for occlusion to help with light leaking. |
…BLE for DynamicGI toggle
This comment was marked as off-topic.
This comment was marked as off-topic.
|
Hi @Image-unavailable , I can't reproduce this spam at least on Windows with Vulkan. Can you send me a minimal repro project or just the project you were testing on if it's not too large? |
|
I tested with this project: #74965 I have verified that downloading the zip and extracting it, then opening with this PR, results in the error spam. There's other warnings that get spammed when doing this, but those are related to some things being broken in the project files, and not the error spam. |
| <operator name="operator &"> | ||
| <return type="Vector2i" /> | ||
| <param index="0" name="right" type="Vector2i" /> | ||
| <description> | ||
| </description> | ||
| </operator> |
There was a problem hiding this comment.
The new Vector2i/Vector3i operators should be documented.
|
There's noticeable light popping when the camera moves but it probably shouldn't be an obstacle to this PR because it's an improvement over SDFGI and it can be iterated on post-merge Maybe it would be interesting in the future to consider the possibility of quarter-height cascades (indoor genres like corridor fps dont have much verticality) and maybe a view bias slider to sample closer to camera to mitigate leaks (unity APV has it and it seems to help, the current normal bias gives splotches on normal-mapped surfaces no matter what you set it to) |
|
For context of what passivestar said , this is with full resolution and max sethings. It still can be merged as it's indeed much better than sdfgi, but those high density cascades should be able to help ( I HOPE SO ) Screen_Recording_20260531_113808.1.mp4 |



What problem(s) does this PR solve?
This PR is a rebase of HDDA GI from #86267 . It includes changes suggested by the reviewers at the time.
TODO:
If this PR is of any interest, hopefully someone can help me with those issues. Any suggestions are appreciated,
I tested the new GI in editor and play in editor under Windows, but I can't check Linux/Mac, so maybe someone running those OS'es can help.