“Ray tracing on programmable graphics hardware”

  • ©Timothy J. Purcell, Ian Buck, William R. Mark, and Patrick (Pat) Hanrahan

  • ©Timothy J. Purcell, Ian Buck, William R. Mark, and Patrick (Pat) Hanrahan




    Ray tracing on programmable graphics hardware



    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.


    1. 3DLABS, 2001. OpenGL 2.0 whitepapers web site. http://www.3dlabs.com/support/developer/ogl2/index.htm.Google Scholar
    2. ALVERSON, R., CALLAHAN, D., CUMMINGS, D., KOBLENZ, B., PORTERFIELD, A., AND SMITH, B. 1990. The Tera computer system. In Proceedings of the 1990 International Conference on Supercomputing, 1-6. Google Scholar
    3. AMANATIDES, J., AND WOO, A. 1987. A fast voxel traversal algorithm for ray tracing. In Eurographics ’87, 3-10.Google Scholar
    4. ANDERSON, B., STEWART, A., MACAULAY, R., AND WHITTED, T. 1997. Accommodating memory latency in a low-cost rasterizer. In 1997 SIGGRAPH/Eurographics Workshop on Graphics hardware, 97-102. Google Scholar
    5. ATI, 2001. RADEON 8500 product web site. http://www.ati.com/products/pc/radeon8500128/index.html.Google Scholar
    6. CARR, N. A., HALL, J. D., AND HART, J. C. 2002. The ray engine. Tech. Rep. UIUCDCS-R-2002-2269, Department of Computer Science, University of Illinois. Google Scholar
    7. DELANY, H. C. 1988. Ray tracing on a connection machine. In Proceedings of the 1988 International Conference on Supercomputing, 659-667. Google Scholar
    8. FAJARDO, M. 2001. Monte carlo ray tracing in action. In State of the Art in Monte Carlo Ray Tracing for Realistic Image Synthesis – SIGGRAPH 2001 Course 29. 151-162.Google Scholar
    9. FUJIMOTO, A., TANAKA, T., AND IWATA, K. 1986. ARTS: Accelerated ray tracing system. IEEE Computer Graphics and Applications 6, 4, 16-26. Google Scholar
    10. HALL, D., 2001. The AR350: Today’s ray trace rendering processor. 2001 SIGGRAPH / Eurographics Workshop On Graphics Hardware – Hot 3D Session 1. http://graphicshardware.org/previous/www_2001/presentations/Hot3D_Daniel_Hall.pdf.Google Scholar
    11. HAVRAN, V., PRIKRYL, J., AND PURGATHOFER, W. 2000. Statistical comparison of ray-shooting efficiency schemes. Tech. Rep. TR-186-2-00-14, Institute of Computer Graphics, Vienna University of Technology.Google Scholar
    12. IGEHY, H., ELDRIDGE, M., AND PROUDFOOT, K. 1998. Prefetching in a texture cache architecture. In 1998 SIGGRAPH / Eurographics Workshop on Graphics hardware, 133-ff. Google Scholar
    13. KAJIYA, J. T. 1986. The rendering equation. In Computer Graphics (Proceedings of ACM SIGGRAPH 86), 143-150. Google Scholar
    14. KHAILANY, B., DALLY, W. J., RIXNER, S., KAPASI, U. J., MATTSON, P., NAMKOONG, J., OWENS, J. D., AND TOWLES, B. 2000. IMAGINE: Signal and image processing using streams. In Hot Chips 12. IEEE Computer Society Press.Google Scholar
    15. KIRK, D., 2001. GeForce3 architecture overview. http://developer.nvidia.com/docs/IO/1271/ATT/GF3ArchitectureOverview.ppt.Google Scholar
    16. LINDHOLM, E., KILGARD, M. J., AND MORETON, H. 2001. A user-programmable vertex engine. In Proceedings of ACM SIGGRAPH 2001, 149-158. Google Scholar
    17. MARK, W. R., AND PROUDFOOT, K. 2001. The F-buffer: A rasterization-order FIFO buffer for multi-pass rendering. In 2001 SIGGRAPH / Eurographics Workshop on Graphics Hardware. Google Scholar
    18. MARSHALL, B., 2001. DirectX graphics future. Meltdown 2001 Conference. http://www.microsoft.com/mscorp/corpevents/meltdown2001/ppt/DXG9.ppt.Google Scholar
    19. MICROSOFT, 2001. DirectX product web site. http://www.microsoft.com/directx/.Google Scholar
    20. MOLNAR, S., EYLES, J., AND POULTON, J. 1992. PixelFlow: High-speed rendering using image composition. In Computer Graphics (Proceedings of ACM SIGGRAPH 92), 231-240. Google Scholar
    21. NVIDIA, 2001. GeForce3 Ti Family: Product overview. 10.01v1. http://www.nvidia.com/docs/lo/1050/SUPP/gf3ti_overview.pdf.Google Scholar
    22. PARKER, S., SHIRLEY, P., LIVNAT, Y., HANSEN, C., AND SLOAN, P.-P. 1998. Interactive ray tracing for isosurface rendering. In IEEE Visualization ’98, 233-238. Google Scholar
    23. PARKER, S., MARTIN, W., SLOAN, P.-P. J., SHIRLEY, P., SMITS, B., AND HANSEN, C. 1999. Interactive ray tracing. In 1999 ACM Symposium on Interactive 3D Graphics, 119-126. Google Scholar
    24. PEERCY, M. S., OLANO, M., AIREY, J., AND UNGAR, P. J. 2000. Interactive multi-pass programmable shading. In Proceedings of ACM SIGGRAPH 2000, 425-432. Google Scholar
    25. REINHARD, E., SMITS, B., AND HANSEN, C. 2000. Dynamic acceleration structures for interactive ray tracing. In Rendering Techniques 2000: 11th Eurographics Workshop on Rendering, 299-306. Google Scholar
    26. SPITZER, J., 2001. Texture compositing with register combiners. http://developer.nvidia.com/docs/IO/1382/ATT/RegisterCombiners.pdf.Google Scholar
    27. TORBORG, J., AND KAJIYA, J. T. 1996. Talisman: Commodity realtime 3D graphics for the PC. In Proceedings of ACM SIGGRAPH 96, 353-363. Google Scholar
    28. WALD, I., SLUSALLEK, F., AND BENTHIN, C. 2001. Interactive distributed ray tracing of highly complex models. In Rendering Techniques 2001: 12th Eurographics Workshop on Rendering, 277-288. Google Scholar
    29. WALD, I., SLUSALLEK, P., BENTHIN, C., AND WAGNER, M. 2001. Interactive rendering with coherent ray tracing. Computer Graphics Forum 20, 3, 153-164.Google Scholar
    30. WHITTED, T. 1980. An improved illumination model for shaded display. Communications of the ACM 23, 6, 343-349. Google Scholar

ACM Digital Library Publication: