4. Previous method
Full scene Anti-aliasing avoid aliasing on
full-screen images
Super-Sampling Anti-aliasing
MultiSampling Anti-Aliasing
CoverageSampling Anti-Aliasing
Custom Filter Anti-Aliasing
5. Previous method - SSAA
Upscale image to higher resolution
Then downsampling it to the desired size
Brute-Force method
6. Previous method - MSAA
Like SSAA, but just do super-sampling for
Z-buffer and Stencil Buffer
Assume that the change of color in one
pixel is not obvious
Disadvantages :
◦ If the alpha value of a translucent fragment is
not within a specified range, it will be
discarded after alpha testing
8. Previous method
Different Sampling method will affect the
result
High quality result with high cost
Must combine with forward rendering
9. Morphological Anti-Aliasing
Algorithm
for black-and-white implementation
◦ Step 1: Separate different color area
◦ Step 2: Classify separation line
◦ Step 3: Compute new color for cells
10. Step 1: Separate
Assume that border pixels are extended
into additional imaginary rows and columns
11. Step 2: Classify
Look for other separation lines which are
orthogonal to the current one at its farthest
vertices
A single separation line can be a part of
multiple patterns (up to four)
classify separation lines into the following
three categories:
◦ 1. Z-shaped pattern
◦ 2. U-shaped pattern
◦ 3. L-shaped pattern
13. Step 3: Compute
I) Anti-aliasing area
Z and U shapes can be split into two L-
shapes
Substep 1. consider each L-shape to be
formed by a primary edge found at the
first step, secondary edge found at the
second step
17. Step 3: Compute
II) Computing blending weights
We calculate the area of each trapezoid
attached to the primary edge and use it
to compute new color of these cells as
follows:
22. Step 3: Pattern search
Can use different method to get answers
◦ Solve the equation for each channel, then average
the solution
◦ Summing all values to form a single numerical
value(assign different weights to different
channels, deferring more advanced luminance
processing until GPU implementation)
If the found values of hc and hd are in the [0,
1] interval, we process the tested shape,
otherwise ignore it
23. Morphological Anti-Aliasing
Feature
◦ MLAA can be used for any image processing
task and does not use any data besides color
values
◦ Can combine with deferred rendering,
allowing for better processor utilization
◦ The algorithm achieves reasonable
performance without any noticeable impact
◦ The “best in class” approach for anti-aliased
deferred shading before Feb, 2011
24. Morphological Anti-Aliasing
Optimization
◦ searching for color discontinuities
Each RGBA color requires 32 bits, so 4 RGBA
pixels will fit into one SSE register
Limitation
◦ Running time depends on number of edges
For the CPU version of MLAA, processing about
20M pixels per second on a single 3GHz core
◦ Can’t respect geometric boundaries well
25. Experiment
Top row: bitmap font;
Second row: TrueType font (antialiased)
Third row: MLAA processing of bitmap font
Ffourth row: MLAA processingof TrueType font.
Font size from left to right: 24, 12, 8, and 6
27. Reference - SRAA
Subpixel Reconstruction Antialiasing
for Deferred Shading
◦ Matthäus G. Chajdas, Morgan McGuire, David
Luebke
◦ ACM SIGGRAPH Symposium on Interactive 3D
Graphics and Games 2011
28. Reference - SRAA
An efficient algorithm for antialiasing
images as a post-process
Increase performance for small quality
reductions
Detailed analysis of the algorithm and
comparison to MLAA
Evaluation on real game scenes including
texture, specular reflection, geometric
aliasing, emission, and bloom