|
123456789101112131415161718192021222324252627282930313233343536373839 |
- import {
- _testFinish,
- GLTFMeshOptDecodePlugin,
- IObject3D,
- KTX2LoadPlugin,
- LoadingScreenPlugin,
- ThreeViewer,
- } from 'threepipe'
-
- async function init() {
-
- const viewer = new ThreeViewer({
- canvas: document.getElementById('mcanvas') as HTMLCanvasElement,
- msaa: true,
- dropzone: {
- addOptions: {
- disposeSceneObjects: true,
- },
- },
- plugins: [LoadingScreenPlugin, GLTFMeshOptDecodePlugin, KTX2LoadPlugin],
- })
-
- await viewer.setEnvironmentMap('https://threejs.org/examples/textures/equirectangular/venice_sunset_1k.hdr')
-
- const options = {
- autoCenter: true,
- autoScale: true,
- };
- (await Promise.all([
- viewer.load<IObject3D>('https://threejs.org/examples/models/gltf/coffeemat.glb', options),
- viewer.load<IObject3D>('https://threejs.org/examples/models/gltf/facecap.glb', options),
- ])).forEach((result, i) => {
- if (!result) return
- result.position.x = i * 2 - 1
- })
-
- }
-
- init().finally(_testFinish)
|