基础介绍
同其他AInfo一样,UE也是从Actor中再派生出了APawn,并定义了3块基本的模板方法接口:
1. 可被Controller控制
2. PhysicsCollision表示
3. MovementInput的基本响应接口
为了更好理解这个概念,让我们看一下用搜索引擎搜一下Pawn得到的图:
Actor和Pawn类的区别和联系
Actor类
在UE4中,Actor类是可以放到游戏场景中的游戏对象的基本类型。你如果想放置任何东西到游戏场景中,必须继承Actor类。
Pawn类
Pawn类是一个代表你或者代表电脑的人工智能的游戏对象,它是可以在屏幕上控制的游戏对象。Pawn类是从Actor类中继承的,它可以通过玩家的设备(键盘、鼠标等)控制或者被人工智能脚本控制。如果它是被玩家控制的,我们通常称之为controller(控制器);如果它是被人工智能脚本控制的,我们通常称之为AI(Artificial Intelligence,人工智能),如果你经常玩游戏,那些NPC(Non-player Characters,非玩家角色)就通常具有AI行为。
综述
能响应外部输入能力的Actor就是Pawn。但是不能因此认为响应输入只在Pawn被实现,实际上会发现响应输入相关的功能是被实现在Actor上的。原因在于Pawn不应该是唯一能够响应输入功能的Actor子类因此为了避免每个进行判断,所以就统一设置为可响应就好。