Magnum/OvrIntegration/Integration.h file

Conversion of libOVR math types.

Provides conversion for the following types:

Magnum typeEquivalent libOVR type
Vector2iovrVector2i, ovrSizei
Vector2ovrVector2f
Vector3ovrVector3f
Matrix4ovrMatrix4f
QuaternionovrQuatf
DualQuaternionovrPosef
Range2DiovrRecti

Unlike Magnum, OVR SDK stores matrices in row-major order, so these get transposed during the conversion.

Example usage:

ovrVector3f a{20.0f, 50.0f, -1.0f};
Vector3 b(a);

using namespace Math::Literals;
auto c = ovrPosef(DualQuaternion::rotation(15.0_degf, Vector3::xAxis()));