UNPKG

@needle-tools/gltf-progressive

Version:

three.js support for loading glTF or GLB files that contain progressive loading data

37 lines (36 loc) 1.65 kB
export { version as VERSION } from "./version.js"; export * from "./extension.js"; export * from "./plugins/index.js"; export { LODsManager, type LOD_Results } from "./lods_manager.js"; export { setDracoDecoderLocation, setKTX2TranscoderLocation, createLoaders, addDracoAndKTX2Loaders, configureLoader } from "./loaders.js"; export { getRaycastMesh, registerRaycastMesh, useRaycastMeshes } from "./utils.js"; import { WebGLRenderer } from "three"; import { GLTFLoader } from "three/examples/jsm/loaders/GLTFLoader.js"; import { SmartLoadingHints } from "./loaders.js"; import { LODsManager } from "./lods_manager.js"; declare type UseNeedleGLTFProgressiveOptions = { /** * When set to true the LODs manager will automatically be enabled */ enableLODsManager?: boolean; /** * Smart loading hints can be used by needle infrastructure to deliver assets optimized for a specific usecase. */ hints?: Omit<SmartLoadingHints, "progressive">; }; /** Use this function to enable progressive loading of gltf models. * @param url The url of the gltf model. * @param renderer The renderer of the scene. * @param loader The gltf loader. * @param opts Options. * @returns The LODsManager instance. * @example In react-three-fiber: * ```ts * const url = 'https://yourdomain.com/yourmodel.glb' * const { scene } = useGLTF(url, false, false, (loader) => { * useNeedleGLTFProgressive(url, gl, loader) * }) * return <primitive object={scene} /> * ``` */ export declare function useNeedleProgressive(url: string, renderer: WebGLRenderer, loader: GLTFLoader, opts?: UseNeedleGLTFProgressiveOptions): LODsManager;