免费成品网站下载,商城平台系统,建设工商联网站的意义,临沂手机网站制作1.首先在 资源加载服务层ResSvc.cs中添加 自定义异步加载函数 using UnityEngine;
using UnityEngine.SceneManagement; //异步加载 命名空间
//功能 : 资源加载服务
public class ResSvc : MonoBehaviour{public void InitSvc(){Debug.Log(Init ResSvc...);}//自定…
1.首先在 资源加载服务层ResSvc.cs中添加 自定义异步加载函数 using UnityEngine;
using UnityEngine.SceneManagement; //异步加载 命名空间
//功能 : 资源加载服务
public class ResSvc : MonoBehaviour{public void InitSvc(){Debug.Log(Init ResSvc...);}//自定义异步加载public void AsyncLoadScene(string sceneName) {SceneManager.LoadSceneAsync(sceneName);}
}然后将 资源加载服务层ResSvc.cs设置成 单例类 using UnityEngine;
using UnityEngine.SceneManagement; //异步加载 命名空间
//功能 : 资源加载服务
public class ResSvc : MonoBehaviour{#region 单例模式public static ResSvc Instance null;#endregionpublic void InitSvc(){#region 单例模式Instance this;#endregionDebug.Log(Init ResSvc...);}//自定义异步加载public void AsyncLoadScene(string sceneName) {SceneManager.LoadSceneAsync(sceneName);}
}最后在 登录业务系统层LoginSys.cs 的登录入口函数中调用 异步加载函数 此时需要一个公用的常量类 方便我们在整个项目中查看我们所设置的常量
创建常量类 编写常量类 //功能 : 常量配置
public class Constans {//场景名称public const string SceneLogin SceneLogin;
}最后将 登录场景SceneLogin 加入到BuildSetting中 修改名字 常量类中的加载场景名字 与 Unity编辑器中的场景名字 对应一致 将两个场景都加入到BuildSeeting中 隐藏掉Canvas下的各个窗口 运行项目 最后在GameRoot.cs类的 开始函数中 加入不可销毁语句 using UnityEngine;
//功能 : 游戏启动入口
public class GameRoot : MonoBehaviour{void Start(){#region 不可销毁DontDestroyOnLoad(this);#endregionDebug.Log(Game Start...);//调用自定义初始化Init();}void Init() {//服务模块初始化ResSvc res GetComponentResSvc();res.InitSvc();//业务系统初始化LoginSys login GetComponentLoginSys();login.InitSys();//进入登陆界面 并 加载相应UIlogin.EnterLogin();}
}此时游戏根入口GameRoot.cs在整个游戏运行时不论怎么切换就不会被删除或销毁了
注意一点 EventSystem要放在不可销毁的对象子级,这样不会因为事件系统被销毁而触发不了对应事件 End.