gpt4 book ai didi

html - ThreejS : Uncaught TypeError: e. OBJMTLLoader 不是构造函数

转载 作者:行者123 更新时间:2023-12-04 07:46:57 25 4
gpt4 key购买 nike

我正在尝试使用 .obj 和 .mtl 文件(使用three.js)用汽车网格替换立方体网格
但每次我收到这个错误时:

Uncaught TypeError: e.OBJMTLLoader is not a constructor
我确保包含库 () 并且没有错字。
这是我加载网格模型的方式:
var loader = new THREE.OBJMTLLoader();
loader.load('./toycar.obj', './toycar.mtl',
function (object) {
toycar = object;
toycar.rotateX(-12); //toycar.rotateZ(-10.99);
toycar.rotateY(4.718);
scene.add(toycar);
});
这就是我使用它在 y 轴上移动模型的方式:
if (toycar != undefined){
toycar.position.y = disp * 0.07; // z for rightLeft, y for upDown

var relativeCameraOffset = new THREE.Vector3(5, 0, 0); // change camera offset
var cameraOffset = relativeCameraOffset.applyMatrix4(toycar.matrixWorld);
camera.position.x = cameraOffset.x;
camera.position.y = cameraOffset.y;
camera.position.z = cameraOffset.z;
camera.lookAt(toycar.position);
}

在这一点上,我不确定是什么导致了这个错误的发生。

最佳答案

THREE.OBJMTLLoader存储库中不存在。只有OBJLoaderMTLLoader .仅当您也想加载 Material 时才需要后者。
建议你学习webgl_loader_obj_mtl来展示两者的使用方式。典型的代码如下所示:

new MTLLoader().load( 'materials.mtl', function ( materials ) {

materials.preload();

new OBJLoader()
.setMaterials( materials )
.load( 'object.obj', function ( object ) {

scene.add( object );

} );

} );

关于html - ThreejS : Uncaught TypeError: e. OBJMTLLoader 不是构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67160252/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com