WASDQE (move camera) + Arrow keys (rotate camera) [Space] to stop rotating The point is that object is always pointing at camera, and it still can rotate around that vector.
I used quaternions , first "look at" quaternion , and then "axis angle" quaternion , and then I multiplied those two quaternions , and then I converted the quaternion into euler angles I spent the whole day creating this. Engine still uses euler angles for rotations.