4
我需要从方向矢量(V正向)旋转矩阵,我也有vRight和VUP向量。所有这些矢量都是单位矢量。3D - 旋转矩阵的方向向量(向前,向上,向右)
我只需要得到旋转矩阵。
要在仅与地面平行的一个平面(xy)中获得旋转矩阵,我这样做: XMMATRIX xmResult;
Vec3f vFwd = pPlayer->VForward;
vFwd.z = 0;
vFwd.Normalize();
xmResult = XMMatrixSet(vFwd.y, -vFwd.x, 0, 0,
vFwd.x, vFwd.y, 0, 0,
0, 0, 1, 0,
0, 0, 0, 1);
上面的代码只得到旋转矩阵绕Z轴旋转:
我想获得的代码,以绕轴所有。 这是我不得不使用的坐标系。我知道这是奇怪的:
这是我以后怎么使用我的矩阵代码:
XMStoreFloat3((XMFLOAT3*)&vStart, XMVector3Transform(XMLoadFloat3((XMFLOAT3*)&vStart), xmTransformation));
XMStoreFloat3((XMFLOAT3*)&vEnd, XMVector3Transform(XMLoadFloat3((XMFLOAT3*)&vEnd), xmTransformation));
我不知道。这就是我所得到的。我不擅长数学。我是程序员,我需要计算几个职位。 – Hooch
这是我将使用该矩阵来画线:\t XMStoreFloat3((XMFLOAT3 *)&的vStart,XMVector3Transform(XMLoadFloat3((XMFLOAT3 *)&的vStart),xmTransformation)); \t XMStoreFloat3((XMFLOAT3 *)&售货,XMVector3Transform(XMLoadFloat3((XMFLOAT3 *)&VEND),xmTransformation)); – Hooch
@Hooch,查看更新 –