You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Run the ssao example (in both debug and release mode)
What went wrong
Checking with renderdoc, the black spot is NANs that happen during the main opaque pass. This seems to only happen when SSAO is enabled on the camera (using ScreenSpaceAmbientOcclusionBundle), but still appears even when SSAO is turned off (by removing the ScreenSpaceAmbientOcclusionSettings component from the camera, leaving the DepthPrepass and NormalPrepass components on the camera).
Additional information
TODO
The text was updated successfully, but these errors were encountered:
# Objective
Fixes#8925
## Solution
~~Clamp the bad values.~~
Normalize the prepass normals when we get them in the `prepass_normal()`
function.
## More Info
The issue is that NdotV is sometimes very slightly greater than 1 (maybe
FP rounding issues?), which caused `F_Schlick()` to return NANs in
`pow(1.0 - NdotV, 5.0)` (call stack looked like`pbr()` ->
`directional_light()` -> `Fd_Burley()` -> `F_Schlick()`)
Bevy version
Bevy main, commit ee1368a.
Started with 72b4aac (fix normal prepass #8890)
Relevant system information
Also occurs on dx12.
What you did
Run the ssao example (in both debug and release mode)
What went wrong
Checking with renderdoc, the black spot is NANs that happen during the main opaque pass. This seems to only happen when SSAO is enabled on the camera (using
ScreenSpaceAmbientOcclusionBundle
), but still appears even when SSAO is turned off (by removing theScreenSpaceAmbientOcclusionSettings
component from the camera, leaving theDepthPrepass
andNormalPrepass
components on the camera).Additional information
TODO
The text was updated successfully, but these errors were encountered: