/// <summary> /// 获取GM /// </summary> /// <returns></returns> private void GetGameManager() { GameObject _gm = GameObject.FindGameObjectWithTag("GameManager"); if (_gm) { gm = _gm.GetComponent <GameManagerT3>(); uiCtrl = _gm.GetComponent <UIControllerT3>(); //Debug.Log("获取T1 gm"); } else { //Debug.Log("GameManager物体不存在"); } }
/// <summary> /// 创建新场景 /// </summary> public void CreateNewScene(SubjectType sjType, OperateType opType) { //实例化PC和VR必备物体,加载场景所需必要的脚本和物体 GameObject camera = Instantiate(mainCamera); camera.name = "Main Camera T3"; GameObject oldCamera = GameObject.Find("Main Camera"); oldCamera.SetActive(false); GameObject EventSystemGameObject = Instantiate(EventSystem); StartUICanvasGameObject = Instantiate(StartUICanvasPrefab); DesktopGameCanvasGameObject = Instantiate(DesktopGameCanvasPrefab); GameObject VRTK_SDKManagerGameObject = Instantiate(VRTK_SDKManagerPrefab); GameObject VRTK_ScriptsGameObject = Instantiate(VRTK_ScriptsPrefab); gm = Instantiate(GameManager).GetComponent <GameManagerT3>(); gm.InitCameraGameObject(camera, StartUICanvasGameObject, DesktopGameCanvasGameObject, VRTK_SDKManagerGameObject, VRTK_ScriptsGameObject); gm.subjectType = sjType; GameObject PipeGroupParentGameObject = Instantiate(pipeGroupParent); GameObject StateSetsParentGameObject = Instantiate(stateSetParent); GameObject UISetParentGameObject = Instantiate(uiSetParent); uiCtrl = gm.GetComponent <UIControllerT3>(); uiCtrl.InitUICanvas(StartUICanvasGameObject, DesktopGameCanvasGameObject, VRTK_SDKManagerGameObject.transform.GetChild(0).GetChild(3).GetChild(0).GetChild(0).gameObject, VRTK_SDKManagerGameObject.transform.GetChild(0).GetChild(3).GetChild(0).GetChild(3).GetChild(0).GetChild(0).gameObject); VRTK_SDKManagerGameObject.GetComponent <VRTK_SDKManager>().scriptAliasLeftController = VRTK_ScriptsGameObject.transform.Find("LeftController").gameObject; VRTK_SDKManagerGameObject.GetComponent <VRTK_SDKManager>().scriptAliasRightController = VRTK_ScriptsGameObject.transform.Find("RightController").gameObject; }