DescriptionThis program demonstrates our work on random-access rendering anti-aliased vector graphics on the GPU. We support a broad class of vector primitives, including multiple layers of semitransparent fills and strokes, with quadratic outlines and color gradients. Our approach is to create a coarse lattice in which each cell contains a variable-length encoding of the graphics primitives that overlap it. These cell-specialized encodings are interpreted at run time within a pixel shader. Advantages include coherent memory access and the ability to map vector graphics onto arbitrary surfaces or under arbitrary deformations. Most importantly, we perform both pre-filtering and supersampling within a single pixel-shader invocation, achieving inter-primitive anti-aliasing at no added memory-bandwidth cost.
(This demo requires Windows Vista (for DirectX 10) and attains highest performance on an NVIDIA 8800 card.)
|