Anti-Aliasing.com
In this section, images computed with ABAA and MSAA with 8 Subpixel Anti-Aliasing.
Using a C/C++ simulation, images are compared side by side by showing how thin triangles are displayed on an 8×8 square arrays of Pixels.
The results of the simulation demonstrate that, when using the same number of Subpixels, ABAA is vastly superior to MSAA.
Comparison of ABAA8 vs MSAA8 with Tri-Fans
It is not practical to show images with gray shades. When printed, the images can be easier to
evaluate at first. But, because of the limitation of the printing process, the results can be inconclusive. Instead of gray shades, in each triangle the covered Subpixels are identified with a face identifier, from, ‘a’ to ‘h’. The results are tabulated in summary tables beside the fans. In
the summary tables, the covered Subpixels are shown with incremental counts per Pixel or per
SL. So, it is easier to evaluate and compare the ABAA vs MSAA approaches.
Four Test Cases
Four test case have been simulated. The detailed results are shown only for the 1 st test case. For the other 3 cases, the results are shown only in summary tables.
Test Cases Consisting of 8 Narrow Triangle Fans
For the simulation, each pixel is processed with a resolution of 8 Subpixels, using ABAA and
MSAA. Each test case image consists of 8 thin triangles organized as fans. Each triangle is
defined by 3 edges within an 8×8 Pixel Span.
In each fan, there are 2 sets of 4 triangles.
– There are four ‘vertical’ triangles (a, b, c & d) with vertical edges (VE), 8 SL long.
– There are four ‘horizontal’ triangles (e, f, g & h) with horizontal edges (HE), 8 Pixel long.
The triangle bases are roughly 1 Pixel wide.
Four Simulated Cases of 8 Narrow Triangle Fans
The test cases have been simulated with a C/C++ program. In each of these four examples,
arrays of 8 thin triangles are displayed within an 8×8 Pixel Span, spreading over an angle of Pi/2
(90 degrees). The results are compared. Refer to Figure 1.
How to Evaluate the Results
Since the triangle tops are 0.0 Pixel wide and the bottoms are 1.0 Pixel wide, it is expected that the number of Subpixel per Pixel from top to bottom of triangles will be incremented in 8 uniform steps. The increment for each step should be 1/8 Pixel (or 1 Subpixel) each.
Results for ABAA
For ABAA, in most cases, the increments are:
0, 1, 2, 3, 4, 5, 6, 7, or
1, 2, 3, 4, 5, 6, 7, 8
Results for MSAA
Some Good: For MSAA, the increments are similar to ABAA when the triangles edges are near
Vertical (face a) or near Horizontal (face h). This is because the Subpixels are positioned
according to the 8 Queen algorithm.
Some Bad: For other orientations, the increments are not constant, with many increments of 2.
There is also ‘hesitation’, when there are some steps with decrements
(highlight in red, like in the figures)
Summary of 4 Fan-Cases with 8 Subpixels
Four Fan cases have been simulated.
For the first fan test, the covered subpixels are shown in the previous figure. For the other 3 case, the results are shown in summary tables.
Using the result from the simulation, the subpixel counts have been tabulated in small summary tables beside the simulated fans for ABAA and MSAA. As can be seen, the subpixel counts for ABAA are consistent. They are independent of edge angles and increment uniformly from top to bottom of the thin triangles. This is not so for MSAA.
The summary of results for the 4 fans test are shown if Figure 2. This figure shows the tabulated subpixel counts for the 4 fan tests.
Again, the subpixel counts for ABAA are consistent, independent of edge angles and are distributed uniformly.
This is not so for MSAA. (highlight in red, like in the figures)
These examples are shown in more details in the books.