void Update() { chaperone.GetPlayAreaRect(ref playArea); chaperoneSetup.GetLiveCollisionBoundsInfo(out pCollisionQuadsBuffer1); chaperoneSetup.GetWorkingCollisionBoundsInfo(out pCollisionQuadsBuffer2); Debug.Log(" Working Col bounds: " + pCollisionQuadsBuffer2.Length.ToString()); GetCollisionBoundsMesh(); //chaperoneSetup.GetWorkingStandingZeroPoseToRawTrackingPose(ref pmatStandingZeroPoseToRawTrackingPose); }
/* * Create the chaparone quads. * * @return Success */ private bool CreateChaporoneQuads() { if (_chaperoneQuads == null) { CVRChaperoneSetup chaperone = OpenVR.ChaperoneSetup; bool success = (chaperone != null) && chaperone.GetLiveCollisionBoundsInfo(out _chaperoneQuads); if (!success) { Debug.LogError("Failed to get Calibrated Chaperone bounds! Make sure you have tracking first, and that your space is calibrated."); return(false); } } return(true); }
// Use this for initialization void Start() { var error = EVRInitError.None; var pChaperone = OpenVR.GetGenericInterface(OpenVR.IVRChaperone_Version, ref error); if (pChaperone == System.IntPtr.Zero || error != EVRInitError.None) { // if (!SteamVR.active) // OpenVR.Shutdown(); return; } var chaperone = new CVRChaperone(pChaperone); var chaperoneSetup = new CVRChaperoneSetup(pChaperone); //var pQuadsBuffer = new HmdQuad_t[]; HmdQuad_t[] pQuadsBuffer = null; // //pQuadsBuffer= new HmdQuad_t[punQuadsCount]; // // int punQuadsCount = 10; // HmdQuad_t[] pqd = new HmdQuad_t[[punQuadsCount]; bool hasBounds = chaperoneSetup.GetLiveCollisionBoundsInfo(out pQuadsBuffer); if (hasBounds == true) { print("YAYA"); print(pQuadsBuffer); } else { print("NOOO"); } //print( chaperone ); //print( chaperoneSetup ); // print( rect ); }