]> git.tdb.fi Git - libs/vr.git/blobdiff - source/oculusriftdevice.cpp
Have the device optionally initialize certain parameters of StereoView
[libs/vr.git] / source / oculusriftdevice.cpp
index 9857f78f2f3c7eb933fde613c211a6ba3af268d0..f521a0e18ba86ec423022526806968fca65933b6 100644 (file)
@@ -1,5 +1,6 @@
 #include "oculusriftdevice.h"
 #include "oculusriftdevice_private.h"
 #include "oculusriftdevice.h"
 #include "oculusriftdevice_private.h"
+#include "stereoview.h"
 
 using namespace std;
 
 
 using namespace std;
 
@@ -33,6 +34,13 @@ OculusRiftDevice::~OculusRiftDevice()
                ovr_Shutdown();
 }
 
                ovr_Shutdown();
 }
 
+void OculusRiftDevice::configure_view(StereoView &view) const
+{
+       ovrEyeRenderDesc left_desc = ovrHmd_GetRenderDesc(priv->ovr_hmd, ovrEye_Left, priv->ovr_hmd->DefaultEyeFov[ovrEye_Left]);
+       ovrEyeRenderDesc right_desc = ovrHmd_GetRenderDesc(priv->ovr_hmd, ovrEye_Right, priv->ovr_hmd->DefaultEyeFov[ovrEye_Left]);
+       view.set_eye_spacing(left_desc.HmdToEyeViewOffset.x-right_desc.HmdToEyeViewOffset.x);
+}
+
 OculusRiftCamera *OculusRiftDevice::create_camera(const GL::Camera &bc) const
 {
        return new OculusRiftCamera(*this, bc);
 OculusRiftCamera *OculusRiftDevice::create_camera(const GL::Camera &bc) const
 {
        return new OculusRiftCamera(*this, bc);