1)Pawn是马甲,Controller是驱动马甲的大脑。 Controller和Pawn相对独立,不一定谁必须有谁。一个Controller至多能控制一个Pawn,一个Pawn至多能被一个Controller控制。
2)Character是Pawn的一种。
Representing Players, Friends, and Foes in the World
|
Pawn |
Pawn 是一个演员,可以是世界上的“代理人”。一个控制器(Controller)可以拥有一个Pawn,他们被设置为容易接受输入,他们 可以做各种各样的其他类似玩家的东西。请注意,一个Pawn不被认为是人形。 |
|
Character |
Character 是一个人形的 Pawn.它带有一个用于碰撞的CapsuleComponent和一个CharacterMovementComponent。它可以做 基本的类人动作,它可以在整个网络上流畅地复制动作,并且具有一些动画相关的功能。 |
Controlling Pawns With Player Input or AI Logic
|
Controller |
Controller 是一个负责指挥Pawn的Actor。 他们通常有两种,AIController和PlayerController。一个Controller可以“拥有” 一个Pawn来控制它。 |
|
PlayerController |
PlayerController 是Pawn和人类玩家控制它之间的接口。PlayerController实质上代表了人类玩家的意愿。 |
|
AIController |
一个AIController就是它的声音。一个模拟的“意志”,可以控制一个Pawn。 |
Displaying Information to Players
|
HUD |
HUD 是“抬头显示器”,或在2D屏幕上显示的是常见于许多游戏。考虑健康,弹药,枪瞄准器等。每个PlayerController通常具有其中 之一。 |
|
Camera |
PlayerCameraManager是一个球员的“眼球”,并管理他的行为。每个PlayerController通常也有其一 |
Setting and Tracking the Rules of the Game
|
GameMode |
“游戏”的概念分为两类。在游戏模式和游戏状态(Game Mode and Game State ) 是游戏的定义,包括像游戏规则的事情, 赢得条件。它只存在于服务器上。它通常不应该有太多的数据在播放过程中发生变化,绝对不应该有客户需要知道的瞬态数据。 |
|
GameState |
该游戏状态( GameState ) 包括游戏,这可能包括像关连球员名单,得分,那里的作品是一盘棋,或者你在一个开放的世界游戏 完成的任务是什么列表的状态。GameState存在于服务器和所有客户端上,并且可以自由复制以保持所有的机器都是最新的。 |
|
PlayerState |
PlayerState是在游戏中,参与者的状态,诸如人类演奏者或者是模拟播放机的机器人。存在作为游戏一部分的非玩家AI不会有 PlayerState。在PlayerState中适当的示例数据包括玩家姓名,得分,类似于MOBA之类的比赛级别,或者玩家是否正在CTF 游戏中携带该旗子。所有玩家的PlayerStates都存在于所有机器上(不像PlayerControllers),并且可以自由复制以保持同步。 |
框架类关系
这个流程图说明了这些核心游戏类如何相互关联。游戏由GameMode和GameState组成。加入游戏的人类玩家与玩家控制器相关联。这些PlayerControllers允许玩家在游戏中拥有棋子,因此他们可以在关卡中拥有物理表征。PlayerControllers还为玩家提供输入控件,平视显示器或HUD,以及用于处理摄像机视图的PlayerCameraManager。