在开发过程中经常遇到切换显示不同UI的需求,实现方案有2套:
1.创建两个场景A/B,在A中点击某个button后触发切换事件后加载B场景现在新的场景信息。优点
是逻辑简单,在不同的场景中创建对应的UI即可,缺点是当两个场景中有重复显示的模型时会有资源重复加载,且模型较大时加载时间较长;
SceneManager.LoadScene("B");
2.创建A/B两个Camera(注意在第二个Camera中取消Audio Listener选项),在该场景中创建两套UI,2套Canvas的Render Camera对应到两个不同的Camera中,点击进行UI切换时,控制对应Camera启用即可。优点是对通用模型不需要做重复加载工作,相机控制切换时间较短,缺点相对于方案1逻辑略复杂。
MainCam = GameObject.Find("Main Camera");
Camera1 = GameObject.Find("Camera1");
MainCam .SetActive(true);
Camera1.SetActive(false);
版权归原作者 闭关昆仑弟子 所有, 如有侵权,请联系我们删除。