I am using gluLookAt in order to put camera wherever I want, a see a scene from there (like using mouse cursor to move camera in a 3D space).
My Up vector is u = (0,0,1).
Because I consider generall camera location and directon, there surely exists a possiblity that vector f (direction of a camera, see documentation) is parallel to the vector u.
In this case cross product is zero and I see just black screen
This is the first problem.
The second is, even though f and u are not parallel, when I change camera direction (in fact, only if I cahnge CamDir.X), the Roll of my camera somehow changes... However, I want is to change Pitch and Heading.
I think I understand mathmatics, but the question is how to make it work properly.
My guess is I have to either change Up vector every time, or instead just rotate and translate a scene using Model Matrix (instead of using gluLookAt).
Thank you and have a nice weekend)