Ray Tracing Project

The goal of this project is to create a ray tracer that renders PhysBAM simulation data. To achieve this goal, a number of ray traceable objects are supported by the renderer for various types of data, such as density fields and temperature fields from smoke simulations, triangulated surfaces from rigid and deformable body simulations, and levelset implicit objects. The core ray tracing functionality is encapsulated in PhysBAM_Ray_Tracing and a basic set of files from PhysBAM_Geometry.

The renderer is released in the form of PhysBAM_Ray_Tracing and the project ray_tracing which currently only renders smoke simulation data and a limited set of basic geometry. The full renderer will be released when a complete version of PhysBAM_Geometry is available.

Once the renderer is compiled it can be used to directly render simulation data from PhysBAM simulations along with a scene file. The scene file describes which data from the simulation to render along with any new geometry explicit defined for rendering only purposes. The basic usage of the render is
The scene file follows a basic structure sequentially listing option, shader and geometry blocks to be rendered. Below is an sample list of the different block. These are some of the blocks taken from the example at the bottom of the page. For a complete listing of options see the source code in the ray_tracing project.