Log inGet started
World

Builtin Library

Branchmain
Branchesmainpublish
Commit3bb1da2647

README.md

taa_resolve

Carries one frame's accumulation forward into the next. Finds where each pixel's surface was last frame, reads what that frame decided there, and mixes a little of this frame's sample into it — so a silhouette gains a gradient and a specular highlight stops flashing as it crosses the sample point.

The history is only usable where it still describes the same surface. Velocity is taken from the nearest pixel of the 3x3 neighbourhood, a reprojection off the frame starts over, and what survives is clipped into the neighbourhood's own colour statistics in YCoCg along the line from the mean — which is what stops a newly-uncovered pixel from trusting the history of whatever was covering it.

Bindings

namekind
scene_colortexture2d
scene_depthtexture_depth
scene_motiontexture2d
taa_historytexture2d
taa_paramsbuffer
taa_statebuffer
taa_outstorage2d (rgba16f)

taa_params carries the tuning, packed by @builtin::systems.antiAliasing.temporalAntiAliasing. taa_state is the history target's state buffer, written by the engine before each render of a view: x whether taa_history holds that view's previous result, y how many renders in a row have carried it, zw the render's sub-pixel offset in pixels.