这个教程中,着重使用Unity所推崇的组件系统,让一个GameObject挂载不同的组件来实现丰富的GameObject的表现。
现在介绍角色系统。
角色GameObject有以上的组件挂载。
- 角色控制
在Scripts / AI / PlayerAIControl.cs 脚本中,写有控制角色的核心逻辑。
将角色注册处不同的状态机,不同的状态机接受不同的输入指令,进而转换到不同的状态,实现玩家的操控。
整个的操作流程是这样的
移动控制流程:CursorManager接受键盘的输入、MoveController缓存移动输入命令、HumanIdle(状态机状态)切换到移动状态、HumanMove(状态机状态)处理移动输入、PhysicComponent(角色的物理组件)处理转向和移动、CharacterController处理实际的移动。