You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
2.0 KiB
C#

using Cysharp.Threading.Tasks;
using Script.FrameWork;
using Script.FrameWork.UI;
using Script.GameLogic.Manager;
using Script.GameLogic.Scene;
using UnityEngine;
using YooAsset;
public class Launcher : MonoBehaviour
{
void Start()
{
DoLaunch();
}
private async void DoLaunch()
{
await InitializeYooAsset();
// 加载配置
DataTableManager.Instance.Init();
UIManager.Instance.Init();
// UIManager.Instance.ShowUI<PageLoading>();
// await UniTask.Delay(2000);
await SceneManager.Instance.LoadSceneAsync<SceneLogin>("SceneLogin");
}
private async UniTask InitializeYooAsset()
{
// 初始化资源系统
YooAssets.Initialize();
// 创建默认的资源包
var package = YooAssets.CreatePackage("DefaultPackage");
// 设置该资源包为默认的资源包可以使用YooAssets相关加载接口加载该资源包内容。
YooAssets.SetDefaultPackage(package);
InitializationOperation initOperation;
#if UNITY_EDITOR
var initParameters = new EditorSimulateModeParameters();
var simulateManifestFilePath =
EditorSimulateModeHelper.SimulateBuild(EDefaultBuildPipeline.BuiltinBuildPipeline, "DefaultPackage");
initParameters.SimulateManifestFilePath = simulateManifestFilePath;
initOperation = package.InitializeAsync(initParameters);
// var initParameters = new OfflinePlayModeParameters();
// initOperation = package.InitializeAsync(initParameters);
#else
var initParameters = new OfflinePlayModeParameters();
initOperation = package.InitializeAsync(initParameters);
#endif
await initOperation;
if (initOperation.Status == EOperationStatus.Succeed)
{
LogHelper.LogInfo("资源包初始化成功");
}
else
{
LogHelper.LogError($"资源包初始化失败:{initOperation.Error}");
}
}
}