Finite-resolution hidden surface removal
SODA '00 Proceedings of the eleventh annual ACM-SIAM symposium on Discrete algorithms
A Case Study of Load Distribution in Parallel View Frustum Culling and Collision Detection
Euro-Par '01 Proceedings of the 7th International Euro-Par Conference Manchester on Parallel Processing
Exploiting temporal coherence in ray casted walkthroughs
SCCG '03 Proceedings of the 19th spring conference on Computer graphics
Multi-level ray tracing algorithm
ACM SIGGRAPH 2005 Papers
SIGGRAPH '05 ACM SIGGRAPH 2005 Courses
Precomputation-Based Rendering
Foundations and Trends® in Computer Graphics and Vision
EGSR'05 Proceedings of the Sixteenth Eurographics conference on Rendering Techniques
A real-time beam tracer with application to exact soft shadows
EGSR'07 Proceedings of the 18th Eurographics conference on Rendering Techniques
Hi-index | 0.00 |
Efficient visible surface determination algorithms have long been a fundamental goal of computer graphics. We discuss the well-known ray casting problem: given a geometric scene description, a synthetic camera, and a viewport which discretizes the camera film plane into pixels, ray casting identifies the visible surface at each pixel, i.e., that scene primitive which is first encountered by an eye ray directed through the pixel center. Interactive rendering systems have not ordinarily been based on ray casting, due to its computational cost. Instead, the dominant method for achieving interactive rendering is hardware-assisted rasterization and depth buffering of polygons, often produced by static or dynamic tesselation of higher-level objects. Modern polygon rasterization architectures are extremely powerful, having undergone an extensive development path. Several trends indicate, however, that alternatives to polygon rasterization and depth buffering deserve examination in the design of future interactive rendering systems. The first trend is the number and breadth of proposed algorithmic and hardware methods to lessen transformation, rasterizer and depth buffer load while viewing models of high complexity. A second, related trend is that geometric models are, increasingly often, larger than ordinary physical memories, lending greater importance to memory coherence considerations. Finally, general purpose processors have grown very powerful, enabling flexible, dynamic retargeting of computational resources to differing subtasks while maintaining responsiveness. A rendering system based on such processors could have significant advantages over dedicated hardware. In light of the above, we explored an alternative, general rendering architecture based on ray casting. In seeking to build an interactive software ray caster, we studied existing visible surface algorithms. Combining three such algorithms, we synthesized frustum casting, a novel algorithm for per-pixel visible surface identification in general scenes. The algorithm samples discretely, but operates in object space, and is exact and efficient. We demonstrate a prototype software renderer based on frustum casting, which achieves interactivity through ``just-in-time'''' sampling, and progressive image improvement through deferral of intersection and shading operations. Frustum casting well addresses the technological trends listed above. We believe that it and other ray-based rendering methods may be practically incorporable by designers of future high-performance rendering architectures.