Computer Graphics

Anti-Aliasing and Filtering

Reconstruction, in space and over time.

Colour is the family; a dashed line is the second member of it.

Drag to pan · scroll to zoom · click a node to open it
G anisotropic-filtering Anisotropic Filtering mipmapping Mipmapping anisotropic-filtering->mipmapping one isotropic level overblurs surfaces seen at an angle antialiasing-over-time Temporal Sample Reuse supersampling Supersampling antialiasing-over-time->supersampling spreads the extra samples across frames fxaa Fast Approximate Anti-Aliasing mlaa Morphological Anti- Aliasing fxaa->mlaa one heuristic pass instead of real pattern classification texture-mapping Texture Mapping mipmapping->texture-mapping minified textures alias badly without prefiltering msaa Multisample Anti- Aliasing mlaa->msaa reconstructs edges from the final image, no extra samples msaa->supersampling supersamples coverage but shades only once neighborhood-clamping Neighborhood Clamping taa Temporal Anti- Aliasing neighborhood-clamping->taa wrong history ghosts and smears behind moving objects smaa Subpixel Morphological Anti- Aliasing smaa->mlaa morphological filtering alone blurs and misses subpixel detail rasterization Rasterization supersampling->rasterization point-sampled coverage aliases on every edge taa->antialiasing-over-time jitters the subpixel offset every frame temporal-reprojection Temporal Reprojection taa->temporal-reprojection the history must be aligned to this frame temporal-reprojection->antialiasing-over-time temporal-upscaling Temporal Upscaling temporal-upscaling->taa the same history also fills in resolution, not just edges

12 nodes

Mipmapping

Stores a prefiltered pyramid and picks the level matching the screen- space footprint, turning texture minification from a sampling problem into a lo… · 1983

Fast Approximate Anti-Aliasing

A single-pass luminance-gradient filter tuned to be almost free. Blurs some genuine detail, and shipped nearly everywhere because it needs nothing fr… · 2009

Morphological Anti-Aliasing

Finds edge patterns in the finished image and reconstructs a coverage estimate from their shape, adding anti-aliasing entirely as a post- process. · 2009

Subpixel Morphological Anti-Aliasing

Adds proper pattern classification, sharper edge detection and optional multi-sample or temporal inputs, recovering the detail that cheap morphologic… · 2012

Anisotropic Filtering

Takes several mip samples along the direction the footprint is stretched, instead of choosing one level from its widest extent.

Temporal Sample Reuse

The general idea that a frame is one sample of a continuously moving signal, so previous frames are usable samples if you can find the corresponding…

Multisample Anti-Aliasing

Samples coverage and depth at several points per pixel but shades only once per covered primitive, which fixes geometric edges at a fraction of the c…

Neighborhood Clamping

Constrains the reprojected history to the colour range of the current frame's neighbouring pixels, so a history sample that no longer describes this…

Supersampling

Render at higher resolution and downsample. Correct by construction, and linearly expensive in both shading and bandwidth, which is why everything be…

Temporal Anti-Aliasing

Jitters the projection each frame and blends the reprojected history, giving supersampled quality at one sample per pixel. Now the default, and the s…

Temporal Reprojection

Uses per-pixel motion vectors to find where this pixel's surface was in the previous frame, making last frame's result available as an input to this…

Temporal Upscaling

Renders below display resolution and reconstructs the full frame from jittered history, treating anti-aliasing and upscaling as the same reconstructi…