1.跳转的场景需要加入buildsetting
2.场景跳转脚本 这里采用异步加载
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
public class SceneManager : MonoSingleton<SceneManager>
{
public UnityAction<float> onProgress = null;
public UnityAction onSceneLoadDone = null;
// Use this for initialization
protected override void OnStart()
{
}
// Update is called once per frame
void Update () {
}
public void LoadScene(string name)
{
StartCoroutine(LoadLevel(name));
}
IEnumerator LoadLevel(string name)
{
Debug.LogFormat("LoadLevel: {0}", name);
AsyncOperation async = UnityEngine.SceneManagement.SceneManager.LoadSceneAsync(name);
async.allowSceneActivation = true;
async.completed += LevelLoadCompleted;
while (!async.isDone)
{
if (onProgress != null)
onProgress(async.progress);
yield return null;
}
}
private void LevelLoadCompleted(AsyncOperation obj)
{
if (onProgress != null)
onProgress(1f);
Debug.Log("LevelLoadCompleted:" + obj.progress);
if (onSceneLoadDone != null)
onSceneLoadDone();
}
}
3.调用
void OnLogin(Result result, string msg)
{
Debug.Log("dasaaaaaaaa");
SceneManager.Instance.LoadScene("CharacterSelect");
}