void UpdateModel(string filePath) { HmdColor_t col = new HmdColor_t(); col.a = Opacity; col.r = 1; col.g = 1; col.b = 1; string ModelFilePath = Path.IsPathRooted(filePath) ? filePath : PathUtilities.GetTruePath(_parent.BasePath, filePath); EVROverlayError err = OpenVR.Overlay.SetOverlayRenderModel(_internalOverlay.Handle, ModelFilePath, ref col); if (err != EVROverlayError.None) { Logger.Error("[RENDERMODEL] Failed to set overlay render model: " + err.ToString()); } else { err = OpenVR.Overlay.SetOverlayTexture(_internalOverlay.Handle, ref _onePixelTexture); if (err != EVROverlayError.None) { Logger.Error("[RENDERMODEL] Failed to set overlay render model stub texture: " + err.ToString()); } else if (CurrentAnimation == null) // Don't log if we're animating. { Logger.Info("[RENDERMODEL] Set render model " + ModelFilePath + " and stub texture for " + _parent.DerivedKey + ".models." + Key); } } /*for(uint i = 0; i < OpenVR.RenderModels.GetRenderModelCount(); i++) * { * StringBuilder renderModelName = new StringBuilder(255); * StringBuilder renderModelPath = new StringBuilder(1024); * OpenVR.RenderModels.GetRenderModelName(i, renderModelName, 255); * EVRRenderModelError rerr = EVRRenderModelError.None; * OpenVR.RenderModels.GetRenderModelOriginalPath(renderModelName.ToString().Trim(), renderModelPath, 1024, ref rerr); * * Logger.Trace("Render Model: " + renderModelName.ToString().Trim() + ", path: " + renderModelPath.ToString().Trim() + ", Error: " + rerr.ToString()); * }*/ }
protected override void InitOVROverlay() { // if (overlay.validHandle) return; //overlay.SetTextureBounds(new VRTextureBounds_t {uMin = 0, vMin = 0, uMax = 1, vMax = 1}); overlay.CreateAndApplyOverlay(startOverlayKey); HmdColor_t color = new HmdColor_t(); color.a = renderModelColor.a; color.r = renderModelColor.r; color.g = renderModelColor.g; color.b = renderModelColor.b; overlay.SetVisible(true); Debug.Log("setting values"); //OpenVR.Overlay.SetOverlayRenderModel(overlay.handle, pathToRenderModel, ref color); SetOverlayTransform(SteamVRManager.I.hmdTrans.position + SteamVRManager.I.hmdTrans.forward, SteamVRManager.I.hmdTrans.eulerAngles, true, true); //overlay.SetTexture(tempTex); currentTexture = tempTex; //OpenVR.Overlay.SetOverlayInputMethod(overlay.handle, VROverlayInputMethod.Mouse); //OpenVR.Overlay.SetOverlayFlag(overlay.handle, VROverlayFlags.HideLaserIntersection, true); //TODO: Look at event //shouldCalculateInteractDesired = true; //lookAtEvent.AddListener(delegate(bool arg0) { isFocused = arg0; }); hasBeenInitialized = true; Debug.Log(overlay.handle + " " + overlay.overlayKey); }
public abstract void SetSceneColor(HmdColor_t color);
public abstract void GetBoundsColor(ref HmdColor_t pOutputColorArray,int nNumOutputColors);
public override void SetSceneColor(HmdColor_t color) { CheckIfUsable(); VRNativeEntrypoints.VR_IVRChaperone_SetSceneColor(m_pVRChaperone,color); }
public override void GetBoundsColor(ref HmdColor_t pOutputColorArray,int nNumOutputColors) { CheckIfUsable(); VRNativeEntrypoints.VR_IVRChaperone_GetBoundsColor(m_pVRChaperone,ref pOutputColorArray,nNumOutputColors); }
public abstract void GetBoundsColor(ref HmdColor_t pOutputColorArray,int nNumOutputColors,float flCollisionBoundsFadeDistance,ref HmdColor_t pOutputCameraColor);
public override void GetBoundsColor(ref HmdColor_t pOutputColorArray,int nNumOutputColors,float flCollisionBoundsFadeDistance,ref HmdColor_t pOutputCameraColor) { CheckIfUsable(); VRNativeEntrypoints.VR_IVRChaperone_GetBoundsColor(m_pVRChaperone,ref pOutputColorArray,nNumOutputColors,flCollisionBoundsFadeDistance,ref pOutputCameraColor); }