import * as SUPER_THREE from 'three'; import { DRACOLoader } from 'three/addons/loaders/DRACOLoader.js'; import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'; import { KTX2Loader } from 'three/addons/loaders/KTX2Loader.js'; import { OBB } from 'three/addons/math/OBB.js'; import { OBJLoader } from 'three/addons/loaders/OBJLoader.js'; import { FBXLoader } from 'three/examples/jsm/loaders/FBXLoader'; import { USDZLoader } from 'three/examples/jsm/loaders/USDZLoader'; import { ColladaLoader } from 'three/examples/jsm/loaders/ColladaLoader'; import { MTLLoader } from 'three/examples/jsm/loaders/MTLLoader'; import * as BufferGeometryUtils from 'three/examples/jsm/utils/BufferGeometryUtils'; import { LightProbeGenerator } from 'three/examples/jsm/lights/LightProbeGenerator'; import { TransformControls } from 'three/examples/jsm/controls/TransformControls.js'; import { GLTFExporter } from 'three/examples/jsm/exporters/GLTFExporter.js'; import { DeviceOrientationControls } from '../../vendor/DeviceOrientationControls'// THREE.DeviceOrientationControls var THREE = globalThis.THREE = {...SUPER_THREE}; // TODO: Eventually include these only if they are needed by a component. THREE.DeviceOrientationControls = DeviceOrientationControls; THREE.DRACOLoader = DRACOLoader; THREE.GLTFLoader = GLTFLoader; THREE.KTX2Loader = KTX2Loader; THREE.OBJLoader = OBJLoader; THREE.MTLLoader = MTLLoader; THREE.OBB = OBB; THREE.OBJLoader = OBJLoader; THREE.FBXLoader = FBXLoader; THREE.USDZLoader = USDZLoader; THREE.ColladaLoader = ColladaLoader; THREE.BufferGeometryUtils = BufferGeometryUtils; THREE.LightProbeGenerator = LightProbeGenerator; THREE.TransformControls = TransformControls; THREE.GLTFExporter = GLTFExporter || console.error("GLTFExporter not found"); THREE.BufferGeometryUtils = BufferGeometryUtils; THREE.LightProbeGenerator = LightProbeGenerator; THREE.DeviceOrientationControls = DeviceOrientationControls; THREE.Cache.enabled = true; export default THREE;