Load a kind=partitionGroup on initial scene construction.
Pattern:
Create a THREE.Group for the wrapper; apply transform.
Recurse each child through the caller-supplied
loadChildren (a thin handle to loadSceneNodes) so its
geometry-specific loader runs and a placeholder mesh attaches.
The recursion handle is passed in (not imported) to break what would
otherwise be a cyclic dependency with load-scene-nodes.ts — the
dep-cruiser check rejects static back-references. Same pattern as
load-children-concurrently.ts.
Partition selection is frustum-only: every intersecting part remains
visible, while off-frustum parts are hidden so their registered loaders can
skip slice updates. No LOD coverage, hysteresis, or level substitution is
involved because hiding an in-frustum spatial part would delete geometry.
Load a kind=
partitionGroupon initial scene construction.Pattern:
THREE.Groupfor the wrapper; apply transform.loadChildren(a thin handle toloadSceneNodes) so its geometry-specific loader runs and a placeholder mesh attaches.The recursion handle is passed in (not imported) to break what would otherwise be a cyclic dependency with
load-scene-nodes.ts— the dep-cruiser check rejects static back-references. Same pattern asload-children-concurrently.ts.Partition selection is frustum-only: every intersecting part remains visible, while off-frustum parts are hidden so their registered loaders can skip slice updates. No LOD coverage, hysteresis, or level substitution is involved because hiding an in-frustum spatial part would delete geometry.