OpenVDB is an open-source package that combines a volumetric data format with algorithms that make it both FAST & COMPACT.

Homebrew is the easiest way to install OpenVDB 3.0 and use it with XCode 6. Here's an easy to follow guide for installing OpenVDB -

Once the install is done, try to open this cube in vdb_view. Then try loading this dragon and see how fast OpenVDB loads data.

Once OpenVDB was installed, it was easy to integrate it into my xcode project. For example, I wanted to write my a grid of density values to vdb files & import them into Houdini for rendering. This can be done in a few lines with openvdb -

void Grid::saveSmokeToVDB(const char* fileName) {
// Include OpenVDB libraries before this
//create empty floating point grid
openvdb::FloatGrid::Ptr grid = openvdb::FloatGrid::create(); 
// Get an accessor for coordinate-based access to voxels.
openvdb::FloatGrid::Accessor accessor = grid->getAccessor();

// Define a coordinate with large signed indices.
openvdb::Coord xyz(0, 0, 0);

xyz.reset(i, j, k);
accessor.setValue(xyz, gDensity(i,j,k));

// Create a VDB file object.
openvdb::io::File file(fileName);

// Add the grid pointer to a container.
openvdb::GridPtrVec grids;

// Write out the contents of the container.

Houdini is great for importing and manipulating vdb data. In this case, I used Houdini 14 which supports OpenVDB natively to render my smoke simulation using Mantra. Here's an example of the Houdini network and render -