我有一组THREE.Mesh对象。我的目标是使用类似的东西
group.applyMatrix( new THREE.Matrix4().makeRotationX( Math.PI / 2) );
。然后,我想将结果作为组默认矩阵,以便我可以在动画中使用matrixUpdate()。
在ThreeJS文档中,我们可以找到:“调用updateMatrix将破坏对矩阵的手动更改,从位置,比例等重新计算矩阵。”
有没有办法进行我想要的手动更改,然后将结果设置为组的默认状态?
答案 0 :(得分:1)
基于@WestLangley相关answer,这是我的问题的解决方案!在执行了我想要的所有矩阵变换后,我只需要这样做:
group.children.forEach( function(mesh) {
mesh.geometry.applyMatrix( group.matrix );
});
group.updateMatrix();