Skip to content
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

Vulkan: LightmapGI exhibits light bleeding through occluded areas and face edges #63437

Closed
Tracked by #56033
WickedInsignia opened this issue Jul 25, 2022 · 6 comments · Fixed by #81872
Closed
Tracked by #56033

Comments

@WickedInsignia
Copy link

Godot version

4.0 Alpha 12

System information

Windows 10, GTX1080, i7 6700

Issue description

Godot 4 LightmapGI exhibits light bleeding through completely occluded spaces and on the edges of faces.
The latter has the appearance of insufficient padding or texel resolution but seems to happen regardless of resolution.

Edge Leaks:

These seem to happen regardless of what resolution the meshes are brought in as. Even in this small scene, an atlas resolution of 2048x2048 wasn't enough to resolve. Both shots from Godot 4.
LightmapLeaks_Ultra005Texels
LightmapLeaks_Ultra001Texels

Edge Leaks, Godot 3 vs 4:

Godot 3's mapper doesn't really exhibit the same leak issues, so this seems to be a regression.
LightmapBleed01_Godot3
LightmapBleed01_Godot4

Occluded Areas, Godot 3 vs 4:
Completely occluded areas also seem to struggle. In this area where the object intersects with the plane, light bleeds through even with Godot 4's mapper set to Ultra.
LightmapBleed02_Godot3
LightmapBleed02_Godot4

Steps to reproduce

MRP provided. Settings in both projects are matched.

Minimal reproduction project

Godot 3:
LightmapQualityExampleG3.zip

Godot 4:
LightmapQualityExampleG4.zip

@Calinou
Copy link
Member

Calinou commented Jul 25, 2022

I can confirm this on 4.0.alpha 5fec0d2 (Linux, NVIDIA 510.68.02). I could notice increased lightmap bleeding when updating the global illumination demo to readd lightmaps, but haven't found any combination of settings that resolves it.

Edit: Still reproducible as of 4.0.beta6. Remember to remove the .godot/ folder from the MRP before opening the editor, so that all 3D scenes are forced to be reimported to fix octahedral compression issues.

@Calinou Calinou changed the title LightmapGI: Light bleeding through occluded areas and face edges Vulkan: LightmapGI exhibits light bleeding through occluded areas and face edges Nov 24, 2022
@clayjohn clayjohn modified the milestones: 4.0, 4.x Jan 12, 2023
@sietse85
Copy link

sietse85 commented Jul 8, 2023

image
Is this the same issue? Godot 4.1 Mono on Linux

@Calinou
Copy link
Member

Calinou commented Jul 8, 2023

Is this the same issue? Godot 4.1 Mono on Linux

This appears to be just vertex normals lacking detail due to the mesh not being subdivided enough, so this is an unrelated issue that can't be fixed by Godot.

@jcostello
Copy link
Contributor

#81872 seems to fix this issue. I would like someone else to verify @WickedInsignia

@akien-mga akien-mga modified the milestones: 4.x, 4.2 Sep 19, 2023
@lander-vr
Copy link
Contributor

lander-vr commented Jan 31, 2024

It seems like I'm still experiencing this in 4.2.1 and #81872 does not seem like a solution to this issue. Pixels that should be completely occluded still receive light, which ends up showing as light leaking/bleeding after denoising. This is also discussed in #75440

Modular environment, using 1 bounce:
With denoising:
image

Without denoising, no bleeding/leaking shows:
(Ignore the weird pattern that shows up in the bounced light, I'm currently trying to investigate when/why this happens, but it is not related to this issue)
image

Inside a wall section:
image

Inside a different wall section:
image

Whether geometry is completely intersecting or just overlapping (which is the case in my environment) doesn't seem to make any difference. These screenshots use medium quality, but with quality set to ultra the same issue persists with the same severity.

@Calinou
Copy link
Member

Calinou commented Jan 31, 2024

@lander-vr Please open a new issue with a minimal reproduction project attached.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants