Recursively collects octants that lie inside the specified region.

@private
@param {Octant} octant - An octant.
@param {Frustum|Box3} region - A region.
@param {Octant[]} result - A list to be filled with octants that intersect with the region.
function cull(octant, region, result) {

	const children = octant.children;

	let i, l;

	b.min = octant.min;
	b.max = octant.max;

	if(region.intersectsBox(b)) {

		if(children !== null) {

			for(i = 0, l = children.length; i < l; ++i) {

				cull(children[i], region, result);

			}

		} else {

			result.push(octant);

		}

	}

}