UE5 制作游戏框架的部分经验积累(持续更新)
一.顶层 GameInstance
可以使用GameInstance,作为掌控全局的管理者。它首先有着绝对长的声明周期,也就意味着它能随时起作用。
1.我们通常会把它用来存储 核心的数据,这样既方便保存读取,也方便随时初始化加载。
2.它可以管理不同的关卡LeveL。也就是不同的Map,和GameMode。每个关卡有自己的GameMode游戏规则。关卡消失了,它也不会消失。
3.初始化,游戏最开始的时候需要的 配置表之类的。它的生命周期开始的非常早,最大限度的减少了游戏等待资源加载的时间。
二. 第二层 GameMode
它用来存储 每个关卡具体的 游戏逻辑,游戏规则,并存着临时的数据。这些临时数据随时会存到GameInstance的全局数据库里,也会从里面读来用来初始化,或者其他用途。
对于每个关卡,都会有的功能,可以抽象出来一个父类。来让框架更清晰。
三.UI
UI共同的功能,也可以抽象为一个基类。并且基类里都有GameIns 和 音效。由于几乎每个关卡都需要UI,所以可以放到对应每个关卡的GameMode里,有的多有的少。