» »

rotiranje okoli x in y osi

rotiranje okoli x in y osi

NoUse4AName ::

Torej pos in lookAt sta vektorja. pos za koliko se je kamera premaknila, lookAt pa za koliko je treba rotirati kamero okoli x in y osi.
Kar ne razumem je zakaj se kamera rotira tudi okoli z osi, ko sta lookAt.X in lookAt.Y oba večja od 0.

Matrix matT, matR;

Quaternion qR;

matT = Matrix.Translation( pos );

matPos = Matrix.Multiply( matT, matPos );

qR = Quaternion.RotationYawPitchRoll( lookAt.X, lookAt.Y, 0 );

matR = Matrix.RotationQuaternion( qR );

matPos = Matrix.Multiply( matR, matPos );

matView = Matrix.Invert( matR );

device.Transform.View = matView;

Gundolf ::

Vse je odvisno od tega kako si ti predstavljaš tvoje rotacije in kako si jih predstavlja računalnik:D

Rotiraš najprej okoli x. Ok. Nato rotiraš okoli y - ni več tako ok. Je to novi y ali stari y? Po rotaciji okoli x se namreč vektor y osi spremeni.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Libre office in datumi

Oddelek: Programska oprema
151234 (947) killa bee
»

Vektor pogleda v 3D prostoru

Oddelek: Šola
6652 (572) Senitel
»

Ne odpirat maila z naslovom: dokument

Oddelek: Pomoč in nasveti
81197 (922) kixs
»

Ali Slo-Techovci vlagate v DELNICE???

Oddelek: Loža
61299 (1100) krneki0001
»

[C#] [XNA] Premikanje objekta

Oddelek: Programiranje
6918 (875) furion

Več podobnih tem