three.js通过objloader导入模型后,如何通过Physjs使模型具有物理效果?

时间:2020-09-26 01:49:01

标签: three.js physijs

我通过Physijs.BoxMesh知道可以让three.js模型具有物理作用

new Physijs.BoxMesh(Geometry, material, 1)

但是现在我的模型是通过objloader导入的。如何使其具有物理作用

var objLoader = new THREE.OBJLoader();
objLoader.load(baseUrl+"sofa/1/file.obj", function(mesh){
    mesh.scale.set(0.115, 0.115, 0.115);
    mesh.rotateY(-Math.PI/2);
    mesh.position.set(-105, 0, 80);
    scene.add(mesh);
})

1 个答案:

答案 0 :(得分:1)

您可以从加载的mesh中提取几何图形,并用它来创建自己的Physijs.BoxMesh

var objLoader = new THREE.OBJLoader();
var boxMesh;
objLoader.load(baseUrl+"sofa/1/file.obj", function(mesh){
    boxMesh = new Physijs.BoxMesh(mesh.geometry, mesh.material);
    boxMesh.scale.set(0.115, 0.115, 0.115);
    boxMesh.rotateY(-Math.PI/2);
    boxMesh.position.set(-105, 0, 80);
    scene.add(boxMesh);
})