Documentation
    Preparing search index...

    Interface BufferGeometryOptions

    Construction arguments of BufferGeometry.

    interface BufferGeometryOptions {
        colors?: Float32Array<ArrayBufferLike>;
        indices?: GeometryIndexArray;
        joints?: Uint16Array<ArrayBufferLike>;
        mode?: GeometryDrawMode;
        normals?: Float32Array<ArrayBufferLike>;
        normals1?: Float32Array<ArrayBufferLike>;
        positions: Float32Array;
        positions1?: Float32Array<ArrayBufferLike>;
        uvs?: Float32Array<ArrayBufferLike>;
        weights?: Float32Array<ArrayBufferLike>;
    }
    Index
    colors?: Float32Array<ArrayBufferLike>

    Optional per-vertex straight RGBA colors, index-aligned with positions (§53, §60a). Length must be 4 / 3 of positions.length — four floats per vertex — and every value must be finite (§85). Consumed only by a material that opts in (UnlitMaterial.vertexColors).

    Optional index buffer. Every entry must be a valid vertex index and the length must be a multiple of the mode's primitive size (§85).

    joints?: Uint16Array<ArrayBufferLike>

    Optional per-vertex joint indices as quadruplets, index-aligned with positions (§53, §54; RFC 0003). Length must be 4 / 3 of positions.length — four influences per vertex — and each entry indexes a Skeleton.bones array this package cannot see (§85 checks the length; the range is the consumers'). Meaningful only together with weights.

    Primitive assembly; defaults to "triangles".

    normals?: Float32Array<ArrayBufferLike>

    Optional per-vertex normals as xyz triplets, index-aligned with positions (§53, §68). Length must equal positions.length and every value must be finite (§85). Unit length is the author's contract — see the module header.

    normals1?: Float32Array<ArrayBufferLike>

    Optional first morph-target normals (NORMAL_1) as xyz triplets, index-aligned with positions (§54). Length must equal positions.length. Bound at attribute location 7.

    positions: Float32Array

    Vertex positions as xyz triplets — positions[3 * i] is vertex i's x. Length must be a multiple of 3 and every value must be finite (§85).

    positions1?: Float32Array<ArrayBufferLike>

    Optional first morph-target positions (POSITION_1) as xyz triplets, index-aligned with positions (§54 GPU morph path). Length must equal positions.length. Bound at attribute location 6.

    uvs?: Float32Array<ArrayBufferLike>

    Optional per-vertex texture coordinates as uv pairs, index-aligned with positions (§53, §55). Length must be 2 / 3 of positions.length — two floats per vertex — and every value must be finite (§85). v = 0 is the bottom edge; see the module header.

    weights?: Float32Array<ArrayBufferLike>

    Optional per-vertex joint weights as quadruplets, index-parallel with joints (§53, §54; RFC 0003). Length must be 4 / 3 of positions.length and every value finite (§85); summing to 1 per vertex is the author's contract — see the module header.