[UE][UE5]Gameplay框架,Actor,pawn,playerController(玩家控制器),Character(角色)之间的关系

Actor,pawn,playerController(玩家控制器),Character(角色)之间的关系

UE5中文讲解
官方讲解:https://docs.unrealengine.com/5.0/zh-CN/gameplay-framework-quick-reference-in-unreal-engine/

Actor:

大意就是一个模型。可以放在场景中。

pawn:

一个actor想要变得生动,就得有相应外部输入的能力,操作我们的角色,让角色和场景里的其他物体互动。
Pawn是可作为世界场景中"代理"的Actor。Pawn可被控制器所有,且可将其设置为易于接受输入,用于执行各种各样类似于玩家的任务。请注意,Pawn不被认定为具有人的特性。

character:

人形的pawn。大部分游戏中都会有用到人形的角色,既然如此,UE就为我们直接提供了一个人形的pawn让我们操纵。

控制器(Controller):

控制器是负责定向Pawn的Actor。包括玩家控制器(playerController)AI控制器(AIController)。一个控制器可以"拥有"一个Pawn来控制它。

playerController:

玩家控制器,是Pawn和控制Pawn的人类玩家之间的界面。玩家控制器基本上代表人类玩家的意愿。

AIController:

AI控制器,AI控制器和听起来一样;可以控制Pawn的模拟"意愿"。

不太理解的看下下面的Gameplay框架

如何判断逻辑写在pawn和playerController哪里比较好?

例如:在一个场景中,我们可以操控持有多个物体(pawn),一个立方体,一个球,一辆坦克。
坦克 具有移动自动寻路两个功能,
立方体具有自动寻路功能,
具有自动寻路功能,
只有坦克具有开炮的功能,立方体和球都不具备,那么开炮这个功能就最好写在坦克的pawn中,但是呢他们3个都具有自动寻路功能,所以写在playerController里最好。

Gameplay框架:

在这里插入图片描述
我们可以看到,playerController包括HUD、Input、playerCameraManager
playerController和AIController都可以操控持有Pawn

游戏有游戏模式,游戏状态,
playerController参与游戏,而AIController不参与游戏

控制器(Controller):

控制器是负责定向Pawn的Actor。包括玩家控制器(playerController)AI控制器(AIController)。一个控制器可以"拥有"一个Pawn来控制它。

playerController:

玩家控制器,是Pawn和控制Pawn的人类玩家之间的界面。玩家控制器基本上代表人类玩家的意愿。

AIController:

AI控制器,AI控制器和听起来一样;可以控制Pawn的模拟"意愿"。

猜你喜欢

转载自blog.csdn.net/weixin_43784914/article/details/127988400
今日推荐