Hi.
I'm implementing a first person camera.
Actually, I already implemented the camera using Euler angle but I'm changing rotation way.
btw this is in the DirectX.
(z: Forward Vector, x: Right Vector, y: Up Vector)
I write my logic, but the result something wrong.
Can you guys check the logic?
1. Get x axis(right vector) from cross product between UP vector and FORWARD vector.
2. Create quaternion based the axis from (1) and constant angle.
3. Rotate forward and up vector with the quaternion from (2) (Calculate qpq*)
4. Create quaternion based the UP vector updated in (3).
5. Rotate forward vector with the quaternion from (4) (also qpq*)
Maybe this logic is right and other things in my code could be wrong.
But I need to be sure if this logic is fine.