Ray tracing on programmable graphics hardware

Timothy J. Purcell, Ian Buck, William R. Mark, Pat Hanrahan

ACM Transactions on Graphics · 2002 · 162 citations · 9 references

Concepts

TL;DR

Graphics hardware has shifted from fixed‑function pipelines to programmable vertex and fragment processors, and is expected to evolve into a general programmable stream processor beyond simple triangle rendering. This study evaluates these programmability trends and demonstrates how ray tracing can be mapped onto graphics hardware. Using a simulator, the authors analyze ray‑casting performance on next‑generation programmable graphics hardware, compare multipass non‑branching versus branching architectures, and show applicability to Whitted, path, and hybrid ray‑tracing algorithms. They find that ray tracing on graphics hardware can outperform CPU implementations and rival traditional hardware‑accelerated triangle rendering.

Abstract

Recently a breakthrough has occurred in graphics hardware: fixed function pipelines have been replaced with programmable vertex and fragment processors. In the near future, the graphics pipeline is likely to evolve into a general programmable stream processor capable of more than simply feed-forward triangle rendering.In this paper, we evaluate these trends in programmability of the graphics pipeline and explain how ray tracing can be mapped to graphics hardware. Using our simulator, we analyze the performance of a ray casting implementation on next generation programmable graphics hardware. In addition, we compare the performance difference between non-branching programmable hardware using a multipass implementation and an architecture that supports branching. We also show how this approach is applicable to other ray tracing algorithms such as Whitted ray tracing, path tracing, and hybrid rendering algorithms. Finally, we demonstrate that ray tracing on graphics hardware could prove to be faster than CPU based implementations as well as competitive with traditional hardware accelerated feed-forward triangle rendering.

References

9