2- 蓝图中的Gameplay框架

2. 蓝图中的Gameplay框架

GameMode是游戏的模式,决定了一切。一个GameMode绑定了其下面的几个要素,不同关卡(map)下,GameMode以及其绑定的蓝图是不一样的。

​ 例如:在游戏大厅和游戏内两个GameMode下,Pawn所能做的动作是不同的。

​ 下面是GameMode及其能绑定的蓝图。

GameMode

Pawn:某个角色

PlayController:Pawn的控制器

HUD:管理ui的模块

GameState:游戏状态类

PlayerState:玩家状态类

SpectatorPawn:旁观者类

GameInstance:全局存在的游戏单例,可用来存放一些全局数据

1. 切换关卡:不同关卡(map)下的数据

​ 局部变量原理:如果切换了不同的关卡,即使它们选择的GameMode是一致的,其中的所有数据都被重置。也就是说,一个GameMode只是一个框架,具体的数值在不同map下,本质是从一个函数跳转到另一个同级别的函数中,数据是不一致的,它们是两个不同的局部变量。

​ 全局单例原理:GameInstance用于共享多个关卡之间的数据,它是全局可见的。

​ 序列化存储:如果在切换关卡时不想使用全局的GameInstance保存数据,还可以将数据进行序列化保存到本地或服务器上。