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

    Interface DebugStateContext

    Surface this helper needs from the parent LuxarApp's components.

    interface DebugStateContext {
        scene: Object3D;
        camera: Camera;
        currentFov: number;
        isAnimating: boolean;
        initialized: boolean;
        isLoading: boolean;
        dims: SimpleDims | null;
        gpuPoolStats?: () => GPUPoolDebugStats | undefined;
        refinementResidency?: () => RefinementResidencyStop | undefined;
    }
    Index
    scene: Object3D
    camera: Camera
    currentFov: number
    isAnimating: boolean
    initialized: boolean
    isLoading: boolean

    Whether a load pass is in flight on any registered scene loader — see DebugState.isLoading for the exact scope (and what it excludes). Passed in like isAnimating and initialized rather than read from a singleton here, so this helper stays pure; the production caller supplies SceneLoaderManager.getInstance().isAnyLoadPassInProgress() per snapshot.

    dims: SimpleDims | null
    gpuPoolStats?: () => GPUPoolDebugStats | undefined

    Optional pool-stats provider so the debug state can surface byte usage.

    refinementResidency?: () => RefinementResidencyStop | undefined

    Optional refinement-stop provider, supplied the same way and for the same reason as gpuPoolStats: the production caller passes SceneLoaderManager.getInstance().refinementResidencyStop() per snapshot so this helper stays pure. Omitted (tests, embeds) means "unknown", which surfaces as an absent DebugState.refinementResidency — never as a synthesised "no stop".