Fix #22574: fix volumetric fog back-face intersection artifacts#23406
Fix #22574: fix volumetric fog back-face intersection artifacts#23406joaoconceicao12 wants to merge 1 commit intobevyengine:release-0.18.0from
Conversation
…acts Fixes angle-dependent volumetric fog artifacts in the atmosphere example (shadow flipping and hard edges while rotating the camera). Root cause was inconsistent back-face intersection setup: far-plane construction in CPU code and ray-plane intersection in WGSL shader code. This patch corrects both calculations and adds a regression test for far-plane positioning in volumetric fog (get_far_planes). Signed-off-by: João Conceição <joao.conceicao@tecnico.ulisboa.pt>
|
Your PR caused a change in the graphical output of an example or rendering test. This might be intentional, but it could also mean that something broke! If it's expected, please add the M-Deliberate-Rendering-Change label. If this change seems unrelated to your PR, you can consider updating your PR to target the latest main branch, either by rebasing or merging main into it. |
|
Thanks for putting this fix together! It looks good at a glance, I'll give it a test. Can you make sure the CI is passing and the PR is against the main branch? We don't merge changes to release branches - any particular reason you set this? |
|
Thanks for the heads-up, and sorry about that. It's my first time contributing. I'll retarget this to main and ensure CI is green there. I’ll post an updated PR link shortly. |
|
Here is the corrected PR #23588 |
|
Your PR caused a change in the graphical output of an example or rendering test. This might be intentional, but it could also mean that something broke! If it's expected, please add the M-Deliberate-Rendering-Change label. If this change seems unrelated to your PR, you can consider updating your PR to target the latest main branch, either by rebasing or merging main into it. |
Objective
Fixes #22574.
This PR fixes angle-dependent volumetric fog artifacts in the atmosphere example ([--features free_camera], where rotating the camera caused shadow flipping and hard edges.
Solution
The root cause was inconsistent back-face intersection setup between CPU and shader paths:
This PR:
Testing
video1.mov
Platform tested:
macOS (Metal backend).
No additional untested platform-specific behavior is currently known.