Unity:场景在真实设备上重叠

时间:2018-02-15 00:30:12

标签: c# unity3d unity5

我有一个2D游戏,我在菜单场景中的“开始”按钮上使用以下代码,一旦我的播放器在游戏场景中死亡,我将使用“重启”按钮。只有当我使用Build& amp;和我在真实设备上玩游戏时才会出现问题。运行Unity设置。我有两个移动我的播放器的按钮,在按下它们几次之后,移动会滞后,并且在播放时菜单场景将重叠在我的游戏场景上。它会在每次游戏开始时发生。更直接地说。我正在玩,突然一个黑色的背景和两个大的START和SETTINGS按钮在我的演奏过程中闪烁并且滞后我的控制然后它们就消失了。有没有人有这个问题可能产生的想法?

 public void LoadScene(string sceneName)
    {
        SceneManager.LoadScene(sceneName);
    }

1 个答案:

答案 0 :(得分:1)

很奇怪,它不应该发生。

但是,请尝试在此代码中使用LoadSceneAsync并查看错误是否仍然存在:

using UnityEngine;
using UnityEngine.SceneManagement;
using System.Collections;

public class ScenesManager : MonoBehaviour {    

    IEnumerator loadScene;
    public float loadingProgress;

    public void LoadScene(string levelName) {
        loadScene = AsyncLoad(levelName);
        StartCoroutine(loadScene);
    }

    private IEnumerator AsyncLoad(string levelName) {
        AsyncOperation asyncLoad = SceneManager.LoadSceneAsync(levelName, LoadSceneMode.Single);
        asyncLoad.allowSceneActivation = false;

        while (!asyncLoad.isDone) {
            loadingProgress = Mathf.Clamp01(asyncLoad.progress);
            asyncLoad.allowSceneActivation = false;
            if (asyncLoad.progress == 0.9f) {
                asyncLoad.allowSceneActivation = true;
            }
            yield return null;
        }
    }
}