Relax Asked:2021-11-15 18:27:49 +0000 UTC2021-11-15 18:27:49 +0000 UTC 2021-11-15 18:27:49 +0000 UTC 如何加载场景而不使其成为主要场景,但能够与其对象、脚本进行交互? 772 我有一个加载屏幕(加载场景)和游戏的主屏幕(main scnen)。游戏从加载屏幕开始。是否有可能以某种方式在后台加载主场景并能够与其对象及其组件进行交互,而不是去它,但保留在加载场景中? c# 2 个回答 Voted vladislavsemenov2004 2021-11-15T20:37:49Z2021-11-15T20:37:49Z 你为什么要这样做?例如,如果要为角色选择武器或车辆,您可以制作PlayerPrefs脚本。 加载屏幕将需要以下代码: [SerializeField] private int _sceneID; // Id сцены [SerializeField] private Image _loadingCircle; // изображение, которое будет показывать загрузку [SerializeField] private Text _text; // текст, в который будут печататься проценты загрузки void Start() { StartCoroutine(AsyncLoad()); } IEnumerator AsyncLoad() { AsyncOperation op = SceneManager.LoadSceneAsync(_sceneID); while (!op.isDone) { float progress = op.progress / 0.9f; _loadingCircle.fillAmount = progress; _text.text = string.Format("{0:0}%", progress * 100); yield return null; } } 不要忘记在顶部写 using UnityEngine.UI; using UnityEngine.SceneManagement; 创建一个单独的 Canvas,其中包含一个图像(如一个圆圈)和一个空文本字段。接下来,挂起脚本并进行设置。按下主菜单中的按钮时不要忘记将其关闭和打开。 Best Answer Andrew_STOP_RU_AGRESSION_IN_UA 2021-11-17T04:50:28Z2021-11-17T04:50:28Z 据我所知,与“另一个场景”中的对象交互的唯一方法是将对象加载到这个场景中,使用它,然后转到下一个场景而不从内存中卸载它。 对于后者,DontDestroyOnLoad.
你为什么要这样做?例如,如果要为角色选择武器或车辆,您可以制作PlayerPrefs脚本。
加载屏幕将需要以下代码:
不要忘记在顶部写
创建一个单独的 Canvas,其中包含一个图像(如一个圆圈)和一个空文本字段。接下来,挂起脚本并进行设置。按下主菜单中的按钮时不要忘记将其关闭和打开。
据我所知,与“另一个场景”中的对象交互的唯一方法是将对象加载到这个场景中,使用它,然后转到下一个场景而不从内存中卸载它。
对于后者,
DontDestroyOnLoad.