示例#1
0
        private void AsyncLoadScene(SceneLoadItem load_item)
        {
#if UNITY_EDITOR
            string[] paths = AssetDatabase.GetAssetPathsFromAssetBundleAndAssetName(
                load_item.asset_id.bundleName,
                load_item.asset_id.assetName);

            if (paths.Length <= 0)
            {
                return;
            }

            AsyncOperation asyncOperation;
            if (LoadSceneMode.Additive == load_item.load_mode)
            {
                asyncOperation = EditorApplication.LoadLevelAdditiveAsyncInPlayMode(paths[0]);
            }
            else
            {
                asyncOperation = EditorApplication.LoadLevelAsyncInPlayMode(paths[0]);
            }

            WaitLoadSceneItem wait_item = new WaitLoadSceneItem();
            wait_item.load_item      = load_item;
            wait_item.asyncOperation = asyncOperation;
            this.wait_list.Add(wait_item);
#endif
        }
示例#2
0
        private void AsyncLoadScene(SceneLoadItem load_item)
        {
            AsyncOperation asyncOperation = SceneManager.LoadSceneAsync(load_item.asset_id.assetName, load_item.load_mode);

            WaitLoadSceneItem wait_item = new WaitLoadSceneItem();

            wait_item.load_item      = load_item;
            wait_item.asyncOperation = asyncOperation;
            this.wait_list.Add(wait_item);
        }