首页 > 解决方案 > 如何使用 .loadAsync 方法在 three.js 中加载多个 OBJ 模型并添加到场景中?

问题描述

我想使用three.js异步加载多个OBJ模型,然后将它们添加到一个场景中。此外,我想将加载的模型分配给常量,以便以后可以访问它们。

为此,我已经从各种来源汇总了以下代码:

import * as THREE from '../../node_modules/three/build/three.module.js';
import {OBJLoader} from '../../node_modules/three/examples/jsm/loaders/OBJLoader.js';
...
const loader = new OBJLoader();
const loadedData_1 = await loader.loadAsync(path2models + file_1 + '.obj');
const loadedData_2 = await loader.loadAsync(path2models + file_2 + '.obj');

scene.add(loadedData_1);
scene.add(loadedData_2);
...

但我无法将模型分配给场景。

实现我的意图的最佳方式是什么?
我是否必须从loadedData_1.children[0] 中选择网格并添加到我的场景中?

来源:
https ://threejs.org/docs/#api/en/loaders/Loader.loadAsync
https://discoverthreejs.com/book/first-steps/load-models/

标签: async-awaitthree.jsmeshobjloader

解决方案


推荐阅读