UNPKG

expo-three

Version:

Utilities for using THREE.js with Expo

32 lines 1.18 kB
import { ColladaLoader } from 'three/examples/jsm/loaders/ColladaLoader'; import { GLTFLoader } from 'three/examples/jsm/loaders/GLTFLoader'; import { MTLLoader } from 'three/examples/jsm/loaders/MTLLoader'; import { OBJLoader } from 'three/examples/jsm/loaders/OBJLoader'; function getExtension(uri) { const lastUriComponent = uri.split('.').pop(); return lastUriComponent.split('?')[0].split('#')[0]; } export function loaderClassForUri(uri) { const extension = getExtension(uri); return loaderClassForExtension(extension); } export function loaderClassForExtension(extension) { if (typeof extension !== 'string') { throw new Error('Supplied extension is not a valid string'); } switch (extension.toLowerCase()) { case 'glb': case 'gltf': return GLTFLoader; case 'obj': return OBJLoader; case 'mtl': return MTLLoader; case 'dae': return ColladaLoader; default: throw new Error('ExpoTHREE.loaderClassForExtension(): Unrecognized file type ' + extension); } } //# sourceMappingURL=loaderClassForExtension.js.map