Skip to content

SSRNode: Improve quality with TAA. #31922

@Mugen87

Description

@Mugen87

Description

Combining SSR with TAA currently exhibits noticeable flickering on SSR reflections. I've prepared a live example based on the SSR demo but with a special material setup. The flickering is more subtle on very rough surface so the materials now use a zero roughness and a metalness value of 1. You can easily see it on areas with specular highlights.

https://rawcdn.githack.com/Mugen87/three.js/c5c8b69023091cbdc9cb80bf97dff54070fda817/examples/webgpu_postprocessing_ssr.html

I've already added a simple experimental temporal filtering in this example which reduces SSR banding artifacts but unfortunately it does not mitigate the flickering. The idea of Mugen87@c5c8b69 is to vary the step sizes based on some sort of noise similar to other raymarching techniques.

I've read that some SSR implementations undo the TAA jitter to perform SSR in a stable coordinate space. However, I'm not sure yet how this is supposed to work. Any insights and recommendations are welcome^^.

/ping @zalo

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions