我必须手动构建对象worldmatrix,因为这比使用方法设置位置更快,更优化。但我遇到的问题是我需要将矩阵旋转180度。 makeRotationY(alpha)只是将旋转设置为180,忽略预先存在的旋转。我需要能够保留预先存在的旋转。因此,如果矩阵具有旋转10并且我应用180旋转,则总计为190.我该怎么做?
目前的工作原理如下:
var inverse_view_to_source = new THREE.Matrix4().getInverse(camera.matrix).
multiply(src_portal.matrix);
inverse_view_to_source.makeRotationY(Math.PI);
inverse_view_to_source = dst_portal.matrix.clone().multiply(inverse_view_to_source);