在 Unity3d 中为多个级别创建一个加载场景

Create one loading scene for many levels in Unity3d

我在加载场景时遇到问题。 我创建了一个加载场景,然后当它完成时,它加载另一个级别,就是这个概念,对吧?现在,问题是如果我有这么多场景要加载,我是否也必须创建这么多加载场景?我想知道是否有一些方法可以让我在加载另一个关卡时仍然通过第一个加载场景来完成,这样我就不必创建那么多加载场景了。

这是我现在所做的事情的逻辑:如果我有 10 个场景要加载,我也必须创建 10 个加载场景...

您可以在 PlayerPref 中为您需要加载的关卡设置一个变量。 你的 Loadscene 得到这个值并加载这个。

在您当前要卸载的场景中:

PlayerPrefs.SetInt ("NextLevel",x);

在您的 LoadSceneLevel 中:

int nextlevel = PlayerPrefs.GetInt ("NextLevel");
Application.LoadLevel(nextlevel);

只需使用一个public static levelLoad: int;

在你的唤醒代码中做

nextLevelLoad = 3; //or whichever level you want to initialize.

那么你可以Application.LoadLevel(nextLevelLoad);

您也可以执行 Application.LoadlLevel(Application.loadedLevel + 1); 并逐渐递增,直到达到 Application.levelCount - 1。 (发生这种情况是因为您的第一个级别是 0,最终级别是 - 总计数的 1。

您可以使用 PlayerPrefs,但这些是为您希望存储的游戏设置和变量保留的。

您还可以将其存储在静态 class 中而不是静态变量中,并保留整个 class 数据结构。

给这只猫剥皮的方法有很多!