var OBJLoader = new THREE.OBJLoader();//obj加载器
var MTLLoader = new THREE.MTLLoader();//材质文件加载器
MTLLoader.load(modelData.mtl, function (materials) {
//obj的模型会和MaterialCreator包含的材质对应起来
OBJLoader.setMaterials(materials);
OBJLoader.load(modelData.url, function (obj) {//url自己定义
//第一个表示模型路径,第二个表示完成导入后的回调函数
//一般我们需要在这个回调函数中将导入的模型添加到场景中
obj.traverse(function (child) {
if (child instanceof THREE.Mesh) {
obj.scale.set(modelData.scale.x, modelData.scale.y, modelData.scale.z);
obj.position.set(modelData.position.x, modelData.position.y, modelData.position.z);
child.material.transparent = true;//材质透明
console.log("child");
}
});
mainBody = obj;
scene.add(obj);//返回的组对象插入场景中
if (drawData.imgList) scene.remove(drawData.imgList);
// 记录新加载的mesh
drawData.imgList = obj;
})
})
threejs 加载obj模型
最新推荐文章于 2024-07-03 16:49:00 发布