1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
void object::objectMatrix() {
D3DXMatrixRotationAxis(&g_mRotationX, &rotationsAxis.xAxis, D3DXToRadian(rotation.x));
D3DXVec3TransformCoord ( &rotationsAxis.yAxis, &rotationsAxis.yAxis, &g_mRotationX );
D3DXVec3TransformCoord ( &rotationsAxis.zAxis, &rotationsAxis.zAxis, &g_mRotationX );
D3DXMatrixRotationAxis(&g_mRotationY, &rotationsAxis.yAxis, D3DXToRadian(rotation.y));
D3DXVec3TransformCoord ( &rotationsAxis.xAxis, &rotationsAxis.xAxis, &g_mRotationY );
D3DXVec3TransformCoord ( &rotationsAxis.zAxis, &rotationsAxis.zAxis, &g_mRotationY );
D3DXMatrixRotationAxis(&g_mRotationZ, &rotationsAxis.zAxis, D3DXToRadian(rotation.z));
D3DXVec3TransformCoord ( &rotationsAxis.yAxis, &rotationsAxis.yAxis, &g_mRotationZ );
D3DXVec3TransformCoord ( &rotationsAxis.xAxis, &rotationsAxis.xAxis, &g_mRotationZ );
//g_mRotation = g_mRotationX * g_mRotationY * g_mRotationZ;
D3DXMatrixMultiply(&g_mRotation, &g_mRotation, &g_mRotationX);
D3DXMatrixMultiply(&g_mRotation, &g_mRotation, &g_mRotationY);
D3DXMatrixMultiply(&g_mRotation, &g_mRotation, &g_mRotationZ);
D3DXMatrixTranslation(&g_mTranslation, translation.x, translation.y, translation.z);
D3DXMatrixMultiply(&g_mObjectMatrix, &g_mTranslation, &g_mRotation);
}
|