不同的四种方法
Matrix4x4 mat = Matrix4x4.TRS(_Model.position, _Model.rotation, _Model.localScale);
print(mat);
print("---------------------------");
// 方法一
mat[0, 2] = - mat[0, 2];
mat[1, 2] = - mat[1, 2];
mat[3, 2] = - mat[3, 2];
mat[2, 0] = - mat[2, 0];
mat[2, 1] = - mat[2, 1];
mat[2, 3] = - mat[2, 3];
// 方法二
mat.m02 = -mat.m02;
mat.m12 = -mat.m12;
mat.m32 = -mat.m32;
mat.m20 = -mat.m20;
mat.m12 = -mat.m12;
mat.m32 = -mat.m32;
print(mat);
print("---------------------------");
//方法三
Matrix4x4 transMatrix = new Matrix4x4
{
m00 = 1, m01 = 0, m02 = 0, m03 = 0,
m10 = 0, m11 = 1, m12 = 0, m13 = 0,
m20 = 0, m21 = 0, m22 = -1,m23 = 0,
m30 = 0, m31 = 0, m32 = 0, m33 = 1
};
//方法四
mat = transMatrix*mat*transMatrix;
Matrix4x4 tr_inv = transMatrix.inverse;
print("test");
print(tr_inv);
print("---------------------------");
print(transMatrix);