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(); // await UniTask.Delay(2000); await SceneManager.Instance.LoadSceneAsync("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}"); } } }