using DG.Tweening; using System.Collections; using System.Collections.Generic; using UnityEngine; /// /// 模型展示 /// public class ModelDisplay : MonoBehaviour { public static ModelDisplay instance; public List O; public string ShowModerName = "空调"; public List AllModer = new List(); public GameObject ZheZhao; // Start is called before the first frame update void Start() { instance = this; if (SceneLoader.instance) { ShowModerName = SceneLoader.instance.ShowModerName; } ModerShow(ShowModerName); switch (ShowModerName) { case "空调": Movement(O[0]); break; case "配电房1": Movement(O[1]); break; case "配电房2": Movement(O[2]); break; case "配电房3": Movement(O[3]); break; case "照明": Movement(O[4]); break; } Invoke("ZheZhaoFalse", 0.5f); } void ZheZhaoFalse() { ZheZhao.SetActive(false); } /// /// 模型显示 /// /// public void ModerShow(string _ShowModerName) { AllModer.ForEach(x => x.SetActive(x.transform.name == _ShowModerName)); } public void Movement(Transform _movePos) { Debug.Log(_movePos.transform.name); Camera.main.transform.GetComponent().enabled = false; Camera.main.transform.GetComponent().ShieldingOperation = true; Camera.main.transform.GetComponent().ResetTarget(); Camera.main.transform.DOMove(_movePos.position, 0.5f).OnComplete(() => { Camera.main.transform.GetComponent().enabled = true; Camera.main.transform.GetComponent().Init(); }); Camera.main.transform.DORotate(_movePos.eulerAngles, 0.5f); // 在这里编写你点击UI后的逻辑代码 } }