lwjglMatrix4fクラスを使用して頂点を回転させようとしています。私はこのコードを試しました:
float rotY = (float) Math.toRadians(180);
Matrix4f transMat = new Matrix4f();
transMat.rotate(rotY, new Vector3f(0.0f, 1.0f, 0.0f));
transMat.translate(new Vector3f(1.0f, 0.0f, 0.0f));
Vector4f vecPosMod = new Vector4f(1.0f, 0.0f, 0.0f, 1.0f);
Matrix4f.transform(transMat, vecPosMod, vecPosMod);
180度回転するはずVector3f(1.0f, 0.0f, 0.0f)
ですが、残念ながら、すべての計算の結果、vecPosModは(-2.0, 0.0, 1.7484555E-7, 1.0)
です。になりたいです(-1.0, 0.0, 0.0, 1.0)
。どのように?