SSGINode: Improve Temporal Noise. #31890
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Related issue: #31839
Description
Current Noise Behavior: https://rawcdn.githack.com/mrdoob/three.js/e33c7162cc881ae2301e067d71076e0ef6137029/examples/webgpu_postprocessing_ssgi.html
New Noise Behavior: https://rawcdn.githack.com/mrdoob/three.js/ce783910bcf441be07b9d2949945f1ba6ed6c296/examples/webgpu_postprocessing_ssgi.html
The SSGI Noise wasn't getting temporally jittered everywhere, this adds some jitter an additional UV node, allowing the noise to converge a little more smoothly.
Before/After of the TRAA Converged Noise Values:

The use of
rand()here is a little suspicious; I wonder if it should be the InterleavedGradientNoise or something else to converge even better. You can see there is a persistent screen-space noise pattern that overlays everything...