Six DOF
// Mobility for cameras or other objects while game is in development.When the right mouse button is not pressed,
// movement can be controlled by a 3DConnexion SpaceMouse, if connected. When the right mouse button is pressed,
// movement is controlled by the mouse and the WASD/QE keys, or the arrow keys. Speed is controlled by R(faster)
// or F(slower). View is not automatically orientated to the scene up vector to allow more flexibility. Use the
// mouse wheel to manage the Z rotation. By default Z adjustments are coarse. With shift key, Z adjustments are
// finer.
class RVAPI SixDof
{
public:
// Update position.
void Update(M4f &pos);
// Internal.
void *operator () () const { return (void *)wobj; }
// Constructor.
SixDof();
// Destructor.
~SixDof();
private:
byte wobj[16];
};