Luxar Viewer API Documentation - v2026.9.22
    Preparing search index...

    Module data/scene-loader/commit/commit-points-geometry

    Points geometry-commit concern extracted from scene-loader.ts.

    Single function (commitPointsGeometry) matching the inline updatePointsGeometry method on the SceneLoader class. The inline version interleaved three concerns:

    1. Find the THREE.Points by name in the root group.
    2. Update userData.visiblePointCount and log on empty data.
    3. Write the new attribute data into GPU buffers — either via the GPU buffer pool (zero allocations on reuse) or, with the pool disabled, dispose+recreate via NodeFactory.

    Where the no-op fast path lives, vs. data-processor-points.ts. data-processor-points.ts exists as the synchronous staging half: the points loader folds nD → 3D projection into loadPoints() itself, so the data is already 3D-projected and ready for GPU upload and there is no async worker projection step to run. Lines (segment clipping) and gsplats (Cholesky-factored projection) instead run per-frame worker dispatches upstream of commit. Because points has no projection to skip, its no-op reference-identity fast path lives HERE in commitPointsGeometry — unlike lines/gsplats, which must short-circuit before their worker projection.

    Filename matches the single export.

    commitPointsGeometry
    syncPointMaterialWithGeometry → syncPointMaterialWithGeometry