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

    Module scene/synthetic-scene

    Synthetic large-scene generators for the perf bench.

    Builds an InstancedLinesMeshConfig, an InstancedGSplatsMeshConfig, or a points payload at configurable instance counts; the debug injector (core/app/debug/debug-interface.ts) pushes the resulting mesh into the live scene via the existing node-factory + material-manager pipeline. Used exclusively by the perf-bench harness to exercise the bandwidth-bound regime (millions of elements) without needing a real on-disk zarr file.

    Not loaded in production builds — the only consumers are the __luxarDebug.injectSyntheticScene(...) debug API and the perf-bench Playwright specs that call it.

    Generators are PURE (typed arrays in/out, seeded PRNG, no THREE runtime import) so they unit-test headlessly. The lines generator's positions/colors/lengths are kept byte-for-byte as originally shipped (pinned by the line-perf-bench.spec.ts 10 M-segment scenario contract; the joint-code arrays are derived from the same walk without consuming PRNG draws, so the pinned arrays are untouched); the points/gsplats generators share the seeded-RNG + gaussian-cluster sampling scaffolding below.

    SyntheticSceneSpec
    SyntheticPointsConfig
    SyntheticSceneType
    SyntheticInjectionResult
    DEFAULT_CLUSTERS
    syntheticLinesBoundsDiagonal
    generateSyntheticLines
    sampleClusteredPositions
    generateSyntheticPoints
    generateSyntheticGSplats