private void CreateSpectatorViewRig(Transform parent) { SpectatorView.HolographicCameraManager hcm = HolographicCameraManager.GetComponent <HolographicCameraManager>(); if (hcm == null) { hcm = HolographicCameraManager.AddComponent <HolographicCameraManager>(); } hcm.HolographicCameraIP = SpectatorViewIP; hcm.LocalComputerIP = LocalComputerIP; HolographicCameraManager = (GameObject)GameObject.Instantiate(HolographicCameraManager, Vector3.zero, Quaternion.identity); HolographicCameraManager.transform.parent = parent; }
public void EnableSpectatorView() { // Instantiate Anchor. if (!Anchor.activeInHierarchy) { Anchor = (GameObject)GameObject.Instantiate(Anchor, Vector3.zero, Quaternion.identity); } Anchor.SetActive(true); // Instantiate HolographicCameraManager. if (SpectatorView.HolographicCameraManager.Instance == null) { CreateSpectatorViewRig(null); } else { SpectatorView.HolographicCameraManager hcm = HolographicCameraManager.GetComponent <HolographicCameraManager>(); Transform parent = SpectatorView.HolographicCameraManager.Instance.transform.parent; if (hcm == null) { Debug.LogWarning("Recreating HolographicCameraManager prefab since HolographicCameraManager script did not exist on original."); GameObject.DestroyImmediate(SpectatorView.HolographicCameraManager.Instance); CreateSpectatorViewRig(parent); } else { if (hcm.HolographicCameraIP != SpectatorViewIP || hcm.LocalComputerIP != LocalComputerIP) { Debug.LogWarning("Recreating HolographicCameraManager prefab since IP's were incorrect on original."); // IP's are wrong, recreate rig. GameObject.DestroyImmediate(SpectatorView.HolographicCameraManager.Instance); CreateSpectatorViewRig(parent); } } } HolographicCameraManager.SetActive(true); }