We propose a new hardware ray casting algorithm for unstructured meshes composed of tetrahedral cells. Our work builds on the technique published at IEEE Visualization 2003 by Weiler et al.. Our contributions can be divided into three categories. First, we propose an alternate representation for mesh data in 2D textures that is more compact and efficient, compared to the 3D textures used in the original work. Second, we use a tile-based subdivision of the screen that allows computation to proceed only at places where it is required. Finally, we do not introduce imaginary cells that fill space caused by nonconvexities of the mesh. Instead, we use a depth-peeling approach that captures when rays re-enter the mesh, which is much more general and does not require a convexification algorithm. Our experiments show that our technique is substantially faster than the technique of Weiler et al. on the same hardware.
Fábio F. Bernardon, Christian Azambuja Pago