Maybe it's a bit of phylosophy here and yet. When you use gluLookAt command, you don't carry, if your UP vector is not ortogonal to the look direction. And then, UP vector you've set (call it "physical UP") being transformed to a look direction ortogonal one (call it "eye UP"). About eye-UP vector we know, that it corresponds to vertical line on the screen (with projection linear in x and y). But what can we say about source physical-UP vector?
Start Free Trial