Clear the cache. Call on scene load/clear.
Compute the cache from the scene metadata if not already
computed. Idempotent: after a successful hit subsequent calls
are O(1) until invalidate() is called.
If no position_bounds metadata is found in the scene graph,
the cache remains empty and getBounds() / getSphere()
return null. There is no negative caching, so a miss re-walks
the whole scene graph on every call until metadata appears.
the cached 3D bounds, or null if ensure() has not
been called or no metadata bounds were found in the scene.
the cached bounding sphere, or null if ensure() has
not been called or no metadata bounds were found.
the cached near-cull safety margin (~0.1% of the
bounding box diagonal). Defaults to 0.1 when no bounds are
cached, matching the value invalidate() resets to.
Lazily-computed, invalidatable cache of the 3D bounds / bounding sphere / near-cull margin derived from the scene's
position_boundsmetadata, projected to the current display dimensions.