小编som*_*ame的帖子

未捕获的类型错误:THREE.MTLLoader 不是构造函数 2.0

我早些时候在这里问过这个问题:Uncaught TypeError: THREE.MTLLoader is not a constructor

我通过更改三个 mtl-loader 文件让它工作的地方。但由于我稍后将我的工作上传到 github,我必须在不更改这些文件的情况下创建一个解决方案。

因此,我尝试使用经典示例中使用的加载器加载 obj 和 mtl 文件:https : //github.com/mrdoob/three.js/blob/master/examples/webgl_loader_obj_mtl.html

但我仍然收到错误“未捕获的类型错误:THREE.MTLLoader 不是构造函数”

我有点不确定如何加载这些加载器,但现在我的代码如下所示:

import * as THREE from 'three'
import {OBJLoader} from 'three'
import {MTLLoader} from 'three'


var mtlLoader = new THREE.MTLLoader();
mtlLoader.load("http://blabla.obj.mtl", function(materials) {
   materials.preload();
   var objLoader = new THREE.OBJLoader();
   objLoader.setMaterials(materials);
   objLoader.load("http://blabla.obj", function(object) {

       object.scale.x = scale;
       object.scale.y = scale;
       object.scale.z = scale;

       scene.add(object)

  });
});
Run Code Online (Sandbox Code Playgroud)

在我插入的 src 文件夹中的three.js文件中的位置:

export { OBJLoader } from './loaders/OBJLoader.js'
export { MTLLoader} from …
Run Code Online (Sandbox Code Playgroud)

three.js typescript objloader

3
推荐指数
1
解决办法
5702
查看次数

标签 统计

objloader ×1

three.js ×1

typescript ×1