Skip to content

GLTFLoader.d overview


Table of contents


utils

DRACOLoader (type alias)

Signature

type DRACOLoader = any

GLTF (interface)

Signature

export interface GLTF {
  animations: AnimationClip[]
  scene: Group
  scenes: Group[]
  cameras: Camera[]
  asset: {
    copyright?: string | undefined
    generator?: string | undefined
    version?: string | undefined
    minVersion?: string | undefined
    extensions?: any
    extras?: any
  }
  parser: GLTFParser
  userData: Record<string, any>
}

GLTFLoader (class)

Signature

export declare class GLTFLoader {
  constructor(manager?: LoadingManager)
}

setDRACOLoader (method)

Signature

setDRACOLoader(dracoLoader: DRACOLoader): this;

setKTX2Loader (method)

Signature

setKTX2Loader(ktx2Loader: KTX2Loader | null): this;

setMeshoptDecoder (method)

Signature

setMeshoptDecoder(meshoptDecoder: any | null): this;

register (method)

Signature

register(callback: (parser: GLTFParser) => GLTFLoaderPlugin): this;

unregister (method)

Signature

unregister(callback: (parser: GLTFParser) => GLTFLoaderPlugin): this;

parse (method)

Signature

parse(
    data: ArrayBuffer | string,
    path: string,
    onLoad: (gltf: GLTF) => void,
    onError?: (event: ErrorEvent) => void,
  ): void;

parseAsync (method)

Signature

parseAsync(data: ArrayBuffer | string, path: string): Promise<GLTF>;

dracoLoader (property)

Signature

dracoLoader: any

ktx2Loader (property)

Signature

ktx2Loader: any

meshoptDecoder (property)

Signature

meshoptDecoder: any

GLTFLoaderPlugin (interface)

Signature

export interface GLTFLoaderPlugin {
  readonly name: string
  beforeRoot?: (() => Promise<void> | null) | undefined
  afterRoot?: ((result: GLTF) => Promise<void> | null) | undefined
  loadNode?: ((nodeIndex: number) => Promise<Object3D> | null) | undefined
  loadMesh?: ((meshIndex: number) => Promise<Group | Mesh | SkinnedMesh> | null) | undefined
  loadBufferView?: ((bufferViewIndex: number) => Promise<ArrayBuffer> | null) | undefined
  loadMaterial?: ((materialIndex: number) => Promise<Material> | null) | undefined
  loadTexture?: ((textureIndex: number) => Promise<Texture> | null) | undefined
  getMaterialType?: ((materialIndex: number) => typeof Material | null) | undefined
  extendMaterialParams?:
    | ((materialIndex: number, materialParams: { [key: string]: any }) => Promise<any> | null)
    | undefined
  createNodeMesh?: ((nodeIndex: number) => Promise<Group | Mesh | SkinnedMesh> | null) | undefined
  createNodeAttachment?: ((nodeIndex: number) => Promise<Object3D> | null) | undefined
}

GLTFParser (class)

Signature

export declare class GLTFParser

setExtensions (method)

Signature

setExtensions(extensions: { [name: string]: any }): void;

setPlugins (method)

Signature

setPlugins(plugins: { [name: string]: GLTFLoaderPlugin }): void;

parse (method)

Signature

parse(onLoad: (gltf: GLTF) => void, onError?: (event: ErrorEvent) => void): void;

json (property)

Signature

json: any

options (property)

Signature

options: { path: string; manager: any; ktx2Loader: KTX2Loader; meshoptDecoder: any; crossOrigin: string; requestHeader: { [header: string]: string; }; }

fileLoader (property)

Signature

fileLoader: any

textureLoader (property)

Signature

textureLoader: any

plugins (property)

Signature

plugins: { [name: string]: GLTFLoaderPlugin; }

extensions (property)

Signature

extensions: { [name: string]: any; }

associations (property)

Signature

associations: any

getDependency (property)

Signature

getDependency: (type: string, index: number) => Promise<any>

getDependencies (property)

Signature

getDependencies: (type: string) => Promise<any[]>

loadBuffer (property)

Signature

loadBuffer: (bufferIndex: number) => Promise<ArrayBuffer>

loadBufferView (property)

Signature

loadBufferView: (bufferViewIndex: number) => Promise<ArrayBuffer>

loadAccessor (property)

Signature

loadAccessor: (accessorIndex: number) => Promise<BufferAttribute | InterleavedBufferAttribute>

loadTexture (property)

Signature

loadTexture: (textureIndex: number) => Promise<Texture>

loadTextureImage (property)

Signature

loadTextureImage: (textureIndex: number, sourceIndex: number, loader: any) => Promise<Texture>

loadImageSource (property)

Signature

loadImageSource: (sourceIndex: number, loader: any) => Promise<Texture>

assignTexture (property)

Signature

assignTexture: (
  materialParams: { [key: string]: any },
  mapName: string,
  mapDef: { index: number; texCoord?: number | undefined; extensions?: any },
  colorSpace?: ColorSpace | undefined
) => Promise<Texture | null>

assignFinalMaterial (property)

Signature

assignFinalMaterial: (object: any) => void

getMaterialType (property)

Signature

getMaterialType: () => any

loadMaterial (property)

Signature

loadMaterial: (materialIndex: number) => Promise<Material>

createUniqueName (property)

Signature

createUniqueName: (originalName: string) => string

createNodeMesh (property)

Signature

createNodeMesh: (nodeIndex: number) => Promise<Group | Mesh | SkinnedMesh>

loadGeometries (property)

Signature

loadGeometries: (primitives: { [key: string]: any }[]) => Promise<BufferGeometry[]>

loadMesh (property)

Signature

loadMesh: (meshIndex: number) => Promise<Group | Mesh | SkinnedMesh>

loadCamera (property)

Signature

loadCamera: (cameraIndex: number) => Promise<Camera>

loadSkin (property)

Signature

loadSkin: (skinIndex: number) => Promise<Skeleton>

loadAnimation (property)

Signature

loadAnimation: (animationIndex: number) => Promise<AnimationClip>

loadNode (property)

Signature

loadNode: (nodeIndex: number) => Promise<Object3D>

loadScene (property)

Signature

loadScene: () => Promise<Group>

GLTFReference (interface)

Signature

export interface GLTFReference {
  materials?: number
  nodes?: number
  textures?: number
  meshes?: number
}

GLTFReferenceType (type alias)

Signature

export type GLTFReferenceType = 'materials' | 'nodes' | 'textures' | 'meshes'

KTX2Loader (type alias)

Signature

type KTX2Loader = any