新建项目
新建一个带新手包的工程,新建蓝图类
选择Character
双击创建的蓝图打开蓝图编辑器,选择组件窗口中的模型栏
在细节窗口中的模型栏内指定要使用的模型
调整位置大小方向等
添加用于连接摄像机的连接臂组件
选中连接臂,再添加一个摄像机作为连接臂的子对象
选中连接臂,勾选UsePawnControlRotation
(连接臂部分参数)
点击”类默认值”
将Pawn中Auto possess Player 设为Player 0表示只有一个玩家
并取消勾选ControllerRotationYaw(此项和控制逻辑中的OrientRotationToMovement冲突)
勾选控制逻辑中的OrientRotationToMovement
角色及视角移动
在蓝图编辑器事件图表窗口中右键,添加事件
添加各种函数等
实现WASD控制角色水平移动,鼠标移动控制摄像机视角旋转
输入映射可在项目设置->输入中查看:
设置角色运动动画
创建一个动画蓝图
选择父类及模型对应的骨架
继续创建一个混合空间,不需要方向动画则选择混合空间1D
打开混合空间:
将相应动画拖到对应划分线
打开动画蓝图,双击AnimGraph
右键添加状态机
双击进入状态机,添加状态
双击进入新建的状态,拖入之前建立的混合空间并连上各层连线
拖出节点并提升为变量
切换到事件图表,按住Alt将创建的变量拖入,添加其他组件并连线:
(按住Alt拖入为赋值,按住Ctrl拖入为获取值)
打开人物蓝图,选中mesh组件,细节->Animation中选择创建的动画蓝图
选择逻辑控制组件
设置行走速度为可以播放走路动画的数值
进入事件图表,拖入逻辑控制,添加其他组件并连线
实现按下左Shift切换跑动,松开为走动
进入动画蓝图,打开事件图表,添加浮空判断相关组件
进入状态机,添加各种跳跃状态
进入各状态拖入相应动画并连接
选中起跳动画,取消勾选细节中的循环播放,落地动画同理
双击连接
拖入获取浮空变量值,即浮空为真时播放起跳动画
打开起跳到下落的连接
当未播放部分比例少于0.1则视为播放完成,跳转至下一个状态
打开下落到落地的连接,拖入浮空变量并添加"NOT"判断
当浮空变量为假时跳转至下一状态
落地到走动状态的连接与起跳到下落状态的连接同理
在动画预览编辑器中可以检查预览状态动作
打开人物蓝图,进入事件图表,添加空格键输入及跳跃组件并连接
实现按下空格进行跳跃
至此完成一个第三人称角色模板的创建