我一直在研究THREEJS框架来渲染* .dae模型。有几种dae模型。我对模型的位置有疑问。当我渲染它们时,每个模型都有不同的位置。我设置了他们的位置dae.position.set(0,0,0);
,但不幸的是,它不能很好地工作。
例如,对于一个模型,我必须将位置设置为dae.position.set(-2, -31, 6.5);
,然后模型位于该位置(0,0,0)。我用AXES axes.position.set(0,0,0);
检查它。
您有什么想法,为什么模型不在x,y,z的零位置上。
感谢您的帮助。我对three.js完全不熟悉。我希望我能清楚地解释自己:)
答案 0 :(得分:1)
模型的顶点偏离原点,因此您可以通过设置dae.position
进行补偿。
您可以通过重新定位模型来自动调整dae位置,如下所示:
var box = new THREE.Box3().setFromObject( dae ); // compute the bounding box of the model
box.getCenter( dae.position ); // set dae.position to be the center of the bounding box
dae.position.multiplyScalar( - 1 ); // negate the dae.position coordinates
three.js r.87