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

    Per-node mesh (triangle-surface) info reported by getState().

    triangleCount counts the triangles ACTUALLY DRAWN this epoch, which for a mesh is drawRange.count / 3 rather than an instance count: the nD slice compaction rewrites the index buffer and narrows drawRange (spec §5.4), leaving the vertex arrays untouched. Reading index.count instead would report the whole surface no matter where the slice sits — the one number a debug driver most needs to be honest about.

    flatNormal and alphaCutout are the two shader VARIANTS a mesh can be built in, surfaced because neither is visible from the geometry or the node attrs alone: the flat/smooth choice folds in the live displayDims (§3.4) and the cutout follows the composed blending mode. They are what an E2E test asserting "this mesh is shading from stored normals right now" has to read.

    interface MeshNodeInfo {
        committedLadderComplete?: boolean;
        committedEnergyFraction?: number;
        loadedLODCount?: number;
        totalLODCount?: number;
        lastAllResident?: boolean;
        name: string;
        triangleCount: number;
        vertexCount: number;
        visible: boolean;
        flatNormal: boolean;
        alphaCutout: boolean;
        hasColormap: boolean;
    }

    Hierarchy (View Summary)

    Index
    committedLadderComplete?: boolean
    committedEnergyFraction?: number
    loadedLODCount?: number
    totalLODCount?: number
    lastAllResident?: boolean
    name: string
    triangleCount: number

    Triangles in the current draw range — what is on screen, not what was loaded.

    vertexCount: number

    Vertices committed to the node. Invariant across slices; the pick-id domain.

    Read from userData.committedVertexCount when stamped, NOT from position.count — that attribute is capacity-sized for a reveal ladder (#1521), so it reports the ladder's LIFETIME total from level 0 on rather than what has actually committed.

    visible: boolean
    flatNormal: boolean

    true when shading from screen-space derivatives instead of stored normals.

    alphaCutout: boolean

    true in opaque mode: the fragment stage applies a hard alpha cutout.

    hasColormap: boolean