Your thoughts on and comments to Volume Rendering in Unreal Engine 4.

There are a few steps in this process. Here is a high-level outline.

  1. Create a sequence of OpenVDB grids in Houdini
  2. Execute a python SOP that writes out to an ascii file with the voxel data. Basically you iterate over all the voxels and output the values to a text file. Chances are you have to output a bunch of metadata too, such as object to world transforms, dimensions, etc. Note in this process we are also essentially converting a sparse grid to a dense one. Read up on OpenVDB if you are curious about sparse volumes.
  3. In Unreal, you need to read this file into a 3d array with the same dimensions as your original grid in Houdini.
  4. The last step is converting the 3d array into a 3d texture that lives on the graphics card. There are some API calls that make this easy.

Note this is a very general overview of how it works. In practice there are a bunch of optimizations you can make.