GPU Ray Tracing.

The NVIDIA® OptiX ray tracing engine is a programmable system designed for NVIDIA GPUs and other highly parallel architectures. The OptiX engine builds on the key observation that most ray tracing algorithms can be implemented using a small set of programmable operations. Consequently, the core of O...

Descripción completa

Detalles Bibliográficos
Publicado en:Communications of the ACM Vol. 56; no. 5; pp. 93 - 102
Autores principales: Parker, Steven G., Friedrich, Heiko, Luebke, David, Morley, Keith, Bigler, James, Hoberock, Jared, McAllister, David, Robison, Austin, Dietrich, Andreas, Humphreys, Greg, McGuire, Morgan, Stich, Martin
Formato: Artículo
Publicado: Association for Computing Machinery May2013
Materias:
Acceso en línea:Ver este registro en EBSCOhost
Descripción
Sumario:The NVIDIA® OptiX ray tracing engine is a programmable system designed for NVIDIA GPUs and other highly parallel architectures. The OptiX engine builds on the key observation that most ray tracing algorithms can be implemented using a small set of programmable operations. Consequently, the core of OptiX is a domain-specific justin- time compiler that generates custom ray tracing kernels by combining user-supplied programs for ray generation, material shading, object intersection, and scene traversal. This enables the implementation of a highly diverse set of ray tracing-based algorithms and applications, including interactive rendering, offline rendering, collision detection systems, artificial intelligence queries, and scientific simulations such as sound propagation. OptiX achieves high performance through a compact object model and application of several ray tracing-specific compiler optimizations. For ease of use it exposes a single-ray programming model with full support for recursion and a dynamic dispatch mechanism similar to virtual function calls.