X-Git-Url: http://git.tdb.fi/?p=libs%2Fvr.git;a=blobdiff_plain;f=source%2Fovr%2Foculusriftdevice.cpp;h=efc0cfaaf4d0baba5a43d64834c4b885ef70afc7;hp=146f04a7c0ad32a12c94dead97ea46265bec34fa;hb=a7cabd8db417583e7d31349ddecb0bee86d624cb;hpb=11d105c5183b401e5f52e9abb16cf659298cf035 diff --git a/source/ovr/oculusriftdevice.cpp b/source/ovr/oculusriftdevice.cpp index 146f04a..efc0cfa 100644 --- a/source/ovr/oculusriftdevice.cpp +++ b/source/ovr/oculusriftdevice.cpp @@ -1,3 +1,4 @@ +#include #include #include "oculusriftdevice.h" #include "oculusriftdevice_private.h" @@ -35,6 +36,25 @@ OculusRiftDevice::~OculusRiftDevice() ovr_Shutdown(); } +void OculusRiftDevice::configure_window(Graphics::Window &window) const +{ + Graphics::WindowOptions win_opts = window.get_options(); + win_opts.width = priv->ovr_hmd->Resolution.w; + win_opts.height = priv->ovr_hmd->Resolution.h; + + const list &monitors = window.get_display().get_monitors(); + string hmd_name = priv->ovr_hmd->ProductName; + for(list::const_iterator i=monitors.begin(); i!=monitors.end(); ++i) + if(hmd_name.find(i->name)!=string::npos) + { + win_opts.fullscreen = true; + win_opts.fullscreen_monitor = &*i; + win_opts.fullscreen_exclusive = false; + } + + window.reconfigure(win_opts); +} + void OculusRiftDevice::configure_view(StereoView &view) const { ovrEyeRenderDesc left_desc = ovrHmd_GetRenderDesc(priv->ovr_hmd, ovrEye_Left, priv->ovr_hmd->DefaultEyeFov[ovrEye_Left]);