Figure 1: From left to right: 8x super-sample anti-aliasing (SSAA), 8x multi-sample anti-aliasing (MSAA) and surface-based anti-aliasing (SBAA) with 8 visibility and 2 surface samples per pixel. The circles represent visibility samples, while the blue and red discs represent shading samples from two different surfaces. The four red primitives sharing the same vertex are part of the same foreground surface. Our MERGE2 algorithm exploits this configuration and shades only one sample for all four red primitives while reserving a second surface sample for the blue background surface. Unlike multi-sampling, SBAA based algorithms impose an upper bound on the number of captured, stored and shaded surfaces rather than primitives in each pixel, therefore significantly reducing storage and shading costs.
AbstractWe present surface based anti-aliasing (SBAA), a new approach to real-time anti-aliasing for deferred renderers that improves the performance and lowers the memory requirements for anti-aliasing methods that sample sub-pixel visibility. We introduce a novel way of decoupling visibility determination from shading that, compared to previous multi-sampling based approaches, significantly reduces the number of samples stored and shaded per pixel. Unlike postprocess anti-aliasing techniques used in conjunction with deferred renderers, SBAA correctly resolves visibility of sub-pixel features, minimizing spatial and temporal artifacts.