Anti-aliasing in 3D

Saturday, May 31st, 2003

Since converting to OpenGL some time back (years?) I have been without anti-aliasing on mesh objects. Now finally I have re-introduced it, only to realize that the technique is probably superfluous these days, what with most 3D cards offering themselves (using a brute force method). Anyway, here is what my special edge rendering technique looks like, now that I have finally patched it into my 3D renderer.

Here is an object rendered at a 320 by 200 resolution, using standard techniques. Note all the jaggy edges which stand out against the white background.
The same object rendered at the same resolution, with the addition of anti-aliased edges. The technique requires no special hardware, simply rendering edges as polygons with alpha blending to soften them.

Apart from the extra rendering and the setup required, a problem with the technique is its tendency to fatten shapes, because the anti-aliased edges must be drawn outside the existing edges of the regular shape.

Another reason why this method doesn’t seem as relevant to me anymore is that it does nothing to smooth the edges formed by the intersection of polygons in the ZBuffer. The image on the right is an enlarged view [with double sized pixels] of 2 cubes intersecting, and while the silhouette edges and regular cube edges are smoothed, the edges where faces intersect are as jaggy as ever. A lot of models do contain such intersections, partly because it simplifies the design process to allow them.

Non 3D Stuff

Oh yeah, of course I’m still kind of working on too at the moment, although things are going just a little… slow. I did get rid of a few niggly problems in , and also repaired so that I can actually use it (to download great big video files over several days).

feed

Leave a Comment