UGF之Base游戏启动入口

2021-02-15  本文已影响0人  APP4x

先看看Base脚本长什么样呢?

首先,我们分析代码的时候,可以看到这个BaseComponent很长啊,如果大家一不小心大E了没有闪。。很容易看跑偏啊!!
这里我画了两个框:

可以看到,就是一个 abstract的组件抽象类,里面就一个功能,注册这个组件到GameEntry里面,方便管理
那么管理的好处是啥?
肯定是有好处的,可以把他们都放在一个地方(这里是一个链表),比如游戏被顶号了啥的,或者重新登陆,需要重新走一遍登录流程,需要把目前游戏内的所有组件都还原(初始化),这里直接一个循环就完事了,不用每个类都要写一遍

那么 GameEntry 里面是干啥的呢?
这个也没在dll里,估计看一眼就知道了(不细说了),主要就是三点:
1.存储所有的 GameFrameworkComponent
2.给外界提供获取 GameFrameworkComponent 的方法
3.提供Shutdown 游戏框架的接口


回过头来看,BaseComponent里面都干了点啥:
宗旨就是一句话:做了游戏框架的初始化
主要看一个函数就差不多了,就是Awake,如下图所示:

按流程说一遍:
1.初始化 VersionHelper
2.初始化 LogHelper
3.初始化 ZipHelper
4.初始化 JsonHelper
5.Utility这个类做了一些事
6.设置资源加载模式
7.设置 Application.targetFrameRate
8.设置 Time.timeScale
9.设置 Application.runInBackground
10.设置 Screen.sleepTimeout
11.设置 Application.lowMemory 回调

接下来要详细讲解下面的每一步,下次再见!

上一篇 下一篇

猜你喜欢

热点阅读