mesh is constructed by recursing in an octree (only stores bounding boxes
and field intensities, there is a custom memory allocator for the nodes so
rather large trees can be generated without mem alloc penalty)

recursion takes into account visibility and metaballs bounding spheres, it
stops inside the volume (negative metaballs are not handled yet)