SearcharxivSearch

arXiv subjects

Mark J. Kilgard

Publications and source records attributed to Mark J. Kilgard.

5 recordsLinked to original sources

Polar Stroking: New Theory and Methods for Stroking Paths

Stroking and filling are the two basic rendering operations on paths in vector graphics. The theory of filling a path is well-understood in terms of contour integrals and winding numbers, but when path rendering standards specify stroking, they resort to the analogy of painting pixels with a brush that traces the outline of the path. This means important standards such as PDF, SVG, and PostScript lack a rigorous way to say what samples are inside or outside a stroked path. Our work fills this gap with a principled theory of stroking. Guided by our theory, we develop a novel polar stroking method to render stroked paths robustly with an intuitive way to bound the tessellation error without needing recursion. Because polar stroking guarantees small uniform steps in tangent angle, it provides an efficient way to accumulate arc length along a path for texturing or dashing. While this paper focuses on developing the theory of our polar stroking method, we have successfully implemented our methods on modern programmable GPUs.

cs.GR

Anecdotal Survey of Variations in Path Stroking among Real-world Implementations

Stroking a path is one of the two basic rendering operations in vector graphics standards (e.g., PostScript, PDF, SVG). We survey path stroking rendering results from real-world software implementations of path stroking for anecdotal evidence that such implementations are prone to rendering variances. While our survey is limited and informal, the rendering results we gathered indicate widespread rendering variations for simple-but-problematic stroked paths first identified decades ago. We conclude that creators of vector graphics content would benefit from a mathematically grounded standardization for how a stroked path should be rasterized.

cs.GR

Cg in Two Pages

Cg is a language for programming GPUs. This paper describes Cg briefly.

cs.GR

Practical and Robust Stenciled Shadow Volumes for Hardware-Accelerated Rendering

Twenty-five years ago, Crow published the shadow volume approach for determining shadowed regions in a scene. A decade ago, Heidmann described a hardware-accelerated stencil buffer-based shadow volume algorithm. Unfortunately hardware-accelerated stenciled shadow volume techniques have not been widely adopted by 3D games and applications due in large part to the lack of robustness of described techniques. This situation persists despite widely available hardware support. Specifically what has been lacking is a technique that robustly handles various "hard" situations created by near or far plane clipping of shadow volumes. We describe a robust, artifact-free technique for hardware-accelerated rendering of stenciled shadow volumes. Assuming existing hardware, we resolve the issues otherwise caused by shadow volume near and far plane clipping through a combination of (1) placing the conventional far clip plane "at infinity", (2) rasterization with infinite shadow volume polygons via homogeneous coordinates, and (3) adopting a zfail stencil-testing scheme. Depth clamping, a new rasterization feature provided by NVIDIA's GeForce3, preserves existing depth precision by not requiring the far plane to be placed at infinity. We also propose two-sided stencil testing to improve the efficiency of rendering stenciled shadow volumes.

cs.GR