Trouble with Arcballs

Hi there.

Let’s assume you had an Arcball class which works perfectly, it gives you a Quaternion containing the accumulated Rotation your Object has to rotate about. Now, I want to rotate the camera instead of the object geometry. What I thought was the right way to do it was:

  • Move the camera into the center of the object
  • Rotate the camera by the Quaternions’ inverse
  • Move the camera outwards along the direction vector of the Camera

    However, some rotation axes seem to be mirrored now. Obviously I’m missing something…

    Any ideas?



i guess its because the rotation is based around the model facing towards the camera? while the camera faces the other way