Small World Engine API Reference - v0.78.00
    Preparing search index...

    Class GltfLoader

    Loader for glTF 2.0 assets (.gltf and .glb).

    Hierarchy (View Summary)

    Index
    _assetManager: AssetManager

    The AssetManager this loader fetches/caches resources through. Private per instance unless options.assetManager was passed -- never the deprecated process-wide singleton.

    _gltfOptions: GltfLoaderOptions
    basePath: string = ""

    The base path for resource URLs.

    • Parameters

      • m: {
            alphaCutoff?: number;
            alphaMode?: "OPAQUE" | "MASK" | "BLEND";
            doubleSided?: boolean;
            emissiveFactor?: number[];
            emissiveTexture?: { index: number };
            extensions?: {
                KHR_materials_clearcoat?: {
                    clearcoatFactor?: number;
                    clearcoatNormalTexture?: { index: number; scale?: number };
                    clearcoatRoughnessFactor?: number;
                    clearcoatRoughnessTexture?: { index: number };
                    clearcoatTexture?: { index: number };
                };
                KHR_materials_emissive_strength?: { emissiveStrength?: number };
                KHR_materials_ior?: { ior?: number };
                KHR_materials_sheen?: {
                    sheenColorFactor?: number[];
                    sheenColorTexture?: { index: number };
                    sheenRoughnessFactor?: number;
                    sheenRoughnessTexture?: { index: number };
                };
                KHR_materials_transmission?: {
                    transmissionFactor?: number;
                    transmissionTexture?: { index: number };
                };
                KHR_materials_volume?: {
                    attenuationColor?: number[];
                    attenuationDistance?: number;
                    thicknessFactor?: number;
                    thicknessTexture?: { index: number };
                };
                [key: string]: unknown;
            };
            normalTexture?: { index: number; scale?: number };
            occlusionTexture?: { index: number; strength?: number };
            pbrMetallicRoughness?: {
                baseColorFactor?: number[];
                baseColorTexture?: { index: number };
                metallicFactor?: number;
                metallicRoughnessTexture?: { index: number };
                roughnessFactor?: number;
            };
        }
      • json: GltfJson
      • folderPath: string
      • buffers: ArrayBuffer[]

      Returns Promise<StandardMaterial>

    • Dispatches an event.

      Parameters

      • type: string

        The event type.

      • eventData: Record<string, unknown> = {}

        Optional data associated with the event.

      Returns void

    • Decodes a data:...;base64,... URI into raw bytes -- public/static so callers that parse a glTF JSON document themselves (ProjectBinding, rather than load()/_loadJson()) can decode its embedded buffers before handing the document to _parse().

      Parameters

      • uri: string

      Returns ArrayBuffer

    • Derives the folder path (everything up to and including the last /) from a URL, so sibling resources (materials, textures, buffers) can be resolved relative to it.

      Parameters

      • url: string

        The URL to derive the folder path from.

      Returns string

      The folder path, including a trailing slash.