Original Post
Hi,
I have a direction vector and I want to create a rotation matrix from it. This is what I am trying:
I had thought that his would work however it gives me an error where the model that uses the matrix is stretched and appears as a giant line across the screen.
Am I doing something wrong?
I have a direction vector and I want to create a rotation matrix from it. This is what I am trying:
//direction = 0, 0, 1
//up = 0, 1, 0
//right = 0, 0, 0
D3DXVec3Normalize(&direction, &direction);
//right
D3DXVec3Cross(&right, &up, &direction);
D3DXVec3Normalize(&right, &right);
rot(0,0) = right.x;
rot(1,0) = right.y;
rot(2,0) = right.z;
rot(3,0) = 0;
rot(0,1) = up.x;
rot(1,1) = up.y;
rot(2,1) = up.z;
rot(3,1) = 0;
rot(0,2) = direction.x;
rot(1,2) = direction.y;
rot(2,2) = direction.z;
rot(3,2) = 0;
rot(0,3) = 0.0f;
rot(1,3) = 0.0f;
rot(2,3) = 0.0f;
rot(3,3) = 1.0f;
I had thought that his would work however it gives me an error where the model that uses the matrix is stretched and appears as a giant line across the screen.
Am I doing something wrong?