void disableCameraImage() { #if DOWNLOADED_ARFOUNDATION if (BackgroundObj != null) { if (BackgroundObjAutoDisable) { StartCoroutine(delayedSubCameraDisable()); for (int loop = 0; loop < Cameras.Length; loop++) { Cameras[loop].cullingMask = cameraMasks_[loop]; } } else { BackgroundObj.GetComponent <Camera>().depth = -51; ResizeBackGroundQuad resizeBackGroundQuad = BackgroundObj.GetComponentInChildren <ResizeBackGroundQuad>(); if (resizeBackGroundQuad != null) { resizeBackGroundQuad.FieldOfView = FindObjectOfType <ARCameraManager>().GetComponent <Camera>().fieldOfView; resizeBackGroundQuad.Resize(); } } } IsTracking = true; #endif }
void viewModeChange() { switch (ViewMode) { case Mode.MR: { MRCamera.tag = "MainCamera"; MRObject.SetActive(true); ARObject.SetActive(false); foreach (SetParentMainCamera hand in Hands) { hand.MainCameraTransform = MRCamera; } foreach (GameObject obj in VRBackgroundObjects) { if (obj != null) { foreach (Renderer renderer in obj.GetComponentsInChildren <Renderer>()) { renderer.enabled = false; } } } CameraTarget cameraTarget = MRObject.GetComponentInChildren <CameraTarget>(); cameraTarget.BackgroundObj.SetActive(true); cameraTarget.PlaneDetectEnabled = !SkipDetectFloor; VRSubCamera.SetActive(false); Canvas[] canvases = FindObjectsOfType <Canvas>(); foreach (Canvas canvas in canvases) { if (canvas.renderMode == RenderMode.WorldSpace && canvas.worldCamera == null) { canvas.worldCamera = MRCamera.GetComponent <Camera>(); } } } break; case Mode.VR: { MRCamera.tag = "MainCamera"; MRObject.SetActive(true); MRObject.GetComponentInChildren <HologlaCameraManager>().SwitchViewMode(HologlaCameraManager.ViewMode.VR); ARObject.SetActive(false); foreach (SetParentMainCamera hand in Hands) { hand.MainCameraTransform = MRCamera; } foreach (GameObject obj in VRBackgroundObjects) { if (obj != null) { foreach (Renderer renderer in obj.GetComponentsInChildren <Renderer>()) { renderer.enabled = true; } } } CameraTarget cameraTarget = MRObject.GetComponentInChildren <CameraTarget>(); cameraTarget.BackgroundObjAutoDisable = true; cameraTarget.PlaneDetectEnabled = !SkipDetectFloor; cameraTarget.BackgroundObj.SetActive(false); VRSubCamera.SetActive(true); cameraTarget.BackgroundObj = VRSubCamera; ResizeBackGroundQuad resizeBackGroundQuad = MRObject.GetComponentInChildren <ResizeBackGroundQuad>(); resizeBackGroundQuad.NoticeTextCenter = false; #if ENABLE_URP var volumes = MRObject.GetComponentsInChildren <UnityEngine.Rendering.Volume>(); foreach (var volume in volumes) { volume.enabled = true; } #else Fisheye[] fisheyes = MRObject.GetComponentsInChildren <Fisheye>(); foreach (Fisheye fisheye in fisheyes) { fisheye.enabled = true; Camera camera = fisheye.GetComponent <Camera>(); camera.fieldOfView = 90f; } LeftEyeFrame.SetActive(false); RightEyeFrame.SetActive(false); #endif Canvas[] canvases = FindObjectsOfType <Canvas>(); foreach (Canvas canvas in canvases) { if (canvas.renderMode == RenderMode.WorldSpace && canvas.worldCamera == null) { canvas.worldCamera = MRCamera.GetComponent <Camera>(); } } } break; case Mode.VRSingle: { ARCamera.tag = "MainCamera"; MRObject.SetActive(false); ARObject.SetActive(true); foreach (SetParentMainCamera hand in Hands) { hand.MainCameraTransform = ARCamera; } foreach (GameObject obj in VRBackgroundObjects) { if (obj != null) { foreach (Renderer renderer in obj.GetComponentsInChildren <Renderer>()) { renderer.enabled = false; } } } ARObject.GetComponentInChildren <CameraTarget>().BackgroundObjAutoDisable = true; ARObject.GetComponentInChildren <CameraTarget>().PlaneDetectEnabled = !SkipDetectFloor; ARObject.GetComponentInChildren <ResizeBackGroundQuad>().NoticeTextCenter = true; StartCoroutine(vrCameraSettingCoroutine(CameraClearFlags.SolidColor)); Canvas[] canvases = FindObjectsOfType <Canvas>(); foreach (Canvas canvas in canvases) { if (canvas.renderMode == RenderMode.WorldSpace && canvas.worldCamera == null) { canvas.worldCamera = ARCamera.GetComponent <Camera>(); } } } break; case Mode.AR: { ARCamera.tag = "MainCamera"; MRObject.SetActive(false); ARObject.SetActive(true); foreach (SetParentMainCamera hand in Hands) { hand.MainCameraTransform = ARCamera; } foreach (GameObject obj in VRBackgroundObjects) { if (obj != null) { foreach (Renderer renderer in obj.GetComponentsInChildren <Renderer>()) { renderer.enabled = false; } } } ARObject.GetComponentInChildren <CameraTarget>().BackgroundObjAutoDisable = false; ARObject.GetComponentInChildren <CameraTarget>().PlaneDetectEnabled = !SkipDetectFloor; ARObject.GetComponentInChildren <ResizeBackGroundQuad>().NoticeTextCenter = true; StartCoroutine(vrCameraSettingCoroutine(CameraClearFlags.Depth)); Canvas[] canvases = FindObjectsOfType <Canvas>(); foreach (Canvas canvas in canvases) { if (canvas.renderMode == RenderMode.WorldSpace && canvas.worldCamera == null) { canvas.worldCamera = ARCamera.GetComponent <Camera>(); } } } break; } }