Developer knowledge network · moderated exchange

UnreliableCode қауымдастығы

Әзірлеушілерді зерттеу, кері инженерия және кодтау қауымдастығы

Knowledge indexТірі
4Categories
919Threads
2.8KЖазбалар
Tutorial

Temporal Anti-Aliasing (TAA) Sub-Pixel Jittering and Velocity Buffer History Blending [StackOverflow Architecture Guide]

graphics_pipeline_pro
DirectX / Vulkan Engineer
MEMBER
Өкіл: 172
Қосылу күні: Sep 2018
Хабарламалар: 10
Рахмет: 51
2 апта бұрын · Aug 5, 2026 7:00 PM
#1

How TAA achieves cinema-smooth anti-aliasing without the heavy performance cost of 8x MSAA:

  1. In each frame, offset the projection matrix by a sub-pixel Halton sequence jitter ($dx, dy \in [-0.5, 0.5]$ pixels).
  2. Output a screen-space Velocity Buffer (Motion Vectors) recording per-pixel movement deltas from previous frame.
  3. In post-processing shader, reproject current pixel coordinates using motion vector to sample the previous frame's history buffer.
  4. Blend current frame with historical buffer: final = lerp(current, history, 0.95).

Completely removes geometric jaggies and temporal specular shimmer!

shader_magician
HLSL / GLSL Dev
MEMBER
Өкіл: 176
Қосылу күні: Jan 2021
Хабарламалар: 8
Рахмет: 32
2 апта бұрын · Aug 5, 2026 9:13 PM
#2

TAA is also the required foundation for modern upscalers like DLSS and FSR 2.

profiler_pat
Performance Hunter
MEMBER
Өкіл: 146
Қосылу күні: Aug 2019
Хабарламалар: 33
Рахмет: 31
2 апта бұрын · Aug 6, 2026 10:07 AM
#3

History clamping (AABB color clipping) is essential to prevent ghosting behind fast-moving objects.