Skip to content
Shapemetry

Types - GLB entities

API reference for ./io/glbEntities on @huukhanhnguyen/types — the option and result records of @huukhanhnguyen/io's GLB entities reader/writer.

See the Guide for the package's role.

API reference

Signatures are generated from the live package .d.ts - not hand-written.

GlbDocument

type

type GlbDocument
// = {
    scene?: number;
    scenes?: {
        nodes?: number[];
    }[];
    nodes?: {
        mesh?: number;
        children?: number[];
        matrix?: number[];
        translation?: number[];
        rotation?: number[];
        scale?: number[];
    }[];
    meshes?: {
        primitives?: {
            attributes?: Record<string, number>;
            indices?: number;
            material?: number;
            mode?: number;
        }[];
    }[];
    accessors?: {
        bufferView?: number;
        byteOffset?: number;
        componentType: number;
        count: number;
        type: string;
        sparse?: unknown;
    }[];
    bufferViews?: {
        buffer: number;
        byteOffset?: number;
        byteLength?: number;
        byteStride?: number;
    }[];
    buffers?: {
        uri?: string;
    }[];
    materials?: {
        name?: string;
        pbrMetallicRoughness?: {
            baseColorFactor?: number[];
            roughnessFactor?: number;
            metallicFactor?: number;
            baseColorTexture?: {
                index?: number;
            };
        };
    }[];
    textures?: {
        source?: number;
    }[];
    images?: {
        uri?: string;
        mimeType?: string;
        bufferView?: number;
    }[];
}

GlbMaterialRecord

type

type GlbMaterialRecord
// = {
    name: string;
    baseColor?: string;
    opacity?: number;
    roughness?: number;
    metallic?: number;
    texture?: GlbTexture;
}

GlbTexture

type

type GlbTexture
// = {
    data: Uint8Array;
    mimeType: string;
}

GlbTriangleMesh

type

type GlbTriangleMesh
// = TriangleMesh & { uvs: number[]; normals: number[]; }
Last updated: 📖 1 min readEdit on GitHub