MCPcopy Create free account
hub / github.com/WarmUpTill/SceneSwitcher / getOpenVRPos

Function getOpenVRPos

plugins/openvr/macro-condition-openvr.cpp:52–74  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

50};
51
52static TrackingData getOpenVRPos(vr::EVRInitError &err)
53{
54 TrackingData data;
55 std::unique_lock<std::mutex> lock(openvrMutex);
56 if (!openvrSystem) {
57 initOpenVR(err);
58 }
59
60 if (openvrSystem && vr::VRCompositor() &&
61 openvrSystem->IsTrackedDeviceConnected(0)) {
62 vr::TrackedDevicePose_t poses[vr::k_unMaxTrackedDeviceCount];
63 openvrSystem->GetDeviceToAbsoluteTrackingPose(
64 vr::TrackingUniverseStanding, 0.0, poses,
65 vr::k_unMaxTrackedDeviceCount);
66 auto hmdPose = poses[vr::k_unTrackedDeviceIndex_Hmd];
67 auto mat = hmdPose.mDeviceToAbsoluteTracking.m;
68 data.x = mat[0][3];
69 data.y = mat[1][3];
70 data.z = mat[2][3];
71 data.valid = true;
72 }
73 return data;
74}
75
76bool MacroConditionOpenVR::CheckCondition()
77{

Callers 2

CheckConditionMethod · 0.85
UpdateOpenVRPosMethod · 0.85

Calls 1

initOpenVRFunction · 0.85

Tested by

no test coverage detected