示例#1
0
 public void LoadScene(string sceneName, LoadSceneDoneCallback loadSceneDoneCallback, LoadSceneUpdateProgressCallback updateCallback)
 {
     this.mSceneName              = sceneName;
     this.mOperation              = SceneManager.LoadSceneAsync(sceneName);
     this.mLoadSceneDoneCallback  = loadSceneDoneCallback;
     this.mUpdateProgressCallback = updateCallback;
 }
示例#2
0
    /// <summary>
    /// 进入场景
    /// </summary>
    /// <param name="loadingSceneName">Loading场景名字,忽略路径,name.scene格式</param>
    /// <param name="loadingSceneDoneCallback">Loading场景加载完成回调,给予自定义Loading场景显示逻辑入口</param>
    /// <param name="sceneName">真正要加载的场景名,格式同loadingSceneName</param>
    /// <param name="logicResNames">逻辑资源名,这里只必要资源,即场景进入后所需的必要资源</param>
    /// <param name="loadSceneDoneCallback">场景加载完成回调,一般用于场景逻辑初始化</param>
    /// <param name="loadSceneUpdateProgressCallback">场景加载进度回调,用于Loading显示</param>
    public void EnterScene(string loadingSceneName, LoadSceneDoneCallback loadingSceneDoneCallback,
                           string sceneName, string[] logicResNames, LoadSceneDoneCallback loadSceneDoneCallback, LoadSceneUpdateProgressCallback loadSceneUpdateProgressCallback)
    {
        this.curSceneName                = sceneName;
        this.curLogicResNames            = logicResNames;
        this.curLoadingSceneDoneCallback = loadingSceneDoneCallback;
        this.curLoadSceneDoneCallback    = loadSceneDoneCallback;
        this.curUpdateProgressCallback   = loadSceneUpdateProgressCallback;

        // 4.释放中间资源
        ResMgr.Instance().Unload();
        // 1.加载Loading场景
        ResMgr.Instance().LoadScene(loadingSceneName, false, OnLoadingSceneDone, null);
    }