Hallo Community,
ich verzweifle gerade bei den oben genannten Operationen mit der Weltmatrix, um die Eigenschaften von Objekten zu verändern.
Ich hab 3 Infos über ein Objekt: Die Position, die Rotation und die Skalierung.
Die 3 versuch ich so zusammen zu bringen:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
|
D3DXMATRIX TransMatrix;
D3DXMATRIX RotMatrix;
D3DXMATRIX WorldMatrix;
D3DXMatrixTranslation(&TransMatrix, Position.x, Position.y, Position.z);
D3DXMatrixRotationYawPitchRoll(&RotMatrix, Rotation.y, Rotation.x, Rotation.z);
D3DXMatrixMultiply(&WorldMatrix, &RotMatrix, &TransMatrix);
D3DXMatrixScaling(&WorldMatrix, Scaling.x, Scaling.y, Scaling.z);
Direct3D->Device->SetTransform(D3DTS_WORLD, &WorldMatrix);
|
Bevor ich so versucht hab das zu skalieren hats auch noch geklappt, aber jetzt steht das Objekt nicht mehr an der Position wos hin soll. Ich denke ich weiß warum das so ist, weiß aber nicht genau was ich dagegen tun soll.
Kann mir einer sagen, wie ichs anstellen muss, dass das Objekt an seine eigentliche Position kommt, aber trotzdem skaliert wird?
Freue mich sehr über eure Hilfe ...
MfG Killmichnich