I was in the middle of creating code that could dynamically sense whether the children array  needed to exist for a given node (to save memory) when I thought 'eh, what's an extra eight pointers per octree leaf? Is it really that dirty? Cubiquity has code that doesn't create the arrays until they're needed, but it never deletes them. Heck it doesn't delete OctreeNodes at all...