X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Fopenvr%2Fopenvrsystem.cpp;h=50d2ecfec54b05380c41bcfa24084aca5e14738a;hb=7ad8d41683649816d3d162f614dc8bb585053311;hp=ec6b418d0a455a9e5f4fb5d7273a6a6e54cc5f8b;hpb=b6de7d24475dec8f5d6b8148a69cf8b561bc0761;p=libs%2Fvr.git diff --git a/source/openvr/openvrsystem.cpp b/source/openvr/openvrsystem.cpp index ec6b418..50d2ecf 100644 --- a/source/openvr/openvrsystem.cpp +++ b/source/openvr/openvrsystem.cpp @@ -47,6 +47,11 @@ OpenVRSystem::~OpenVRSystem() vr::VR_Shutdown(); } +bool OpenVRSystem::is_maybe_available() +{ + return vr::VR_IsHmdPresent(); +} + void OpenVRSystem::configure_view(StereoView &view) const { vr::IVRSystem *vr_sys = vr::VRSystem(); @@ -69,6 +74,16 @@ void OpenVRSystem::configure_view(StereoView &view) const view.set_eye_matrices(convert_matrix(left), convert_matrix(right)); } +void OpenVRSystem::set_absolute_tracking(bool a) +{ + vr::VRCompositor()->SetTrackingSpace(a ? vr::TrackingUniverseStanding : vr::TrackingUniverseSeated); +} + +bool OpenVRSystem::get_absolute_tracking() const +{ + return vr::VRCompositor()->GetTrackingSpace()==vr::TrackingUniverseStanding; +} + OpenVRCamera *OpenVRSystem::create_camera(const GL::Camera &bc) { return new OpenVRCamera(*this, bc);