虚幻5.3学习记录【第二天】

2024/07/10

角色坠落动画的制作

在角色的动画蓝图处的基础状态机添加坠落{姿态},并设置进入与退出的条件。

进入的条件判断,其中需要用第二个布尔变量来剔除重复的跳跃事件,不剔除会导致人物在连点空格时反复执行动画从而鬼畜。

而退出时不需要

在坠落{姿态}中导入相对应的动画

蹲伏状态的制作,蹲伏状态同样使用了混合空间1D的方式实现,并与行走,跑步,冲刺,放在了同一个姿态内,图片上方的【未持武器蹲_BS1D】为新增的混合空间1D,同时在右侧加入节点来判断此时是否蹲下。判断条件来自下方布尔值【是否蹲伏(用于蹲伏动画切换)】。

布尔值【是否蹲伏(用于蹲伏动画切换)】的数据获取自角色蓝图【Player_BP】中的【行走冲刺与跳跃蹲伏】图表下的【蹲伏切换】模块。大意为,在玩家按下对应键盘按键后判断角色是否在蹲伏状态(此功能为UE内置,用于防范不当的蹲伏事件),判断后决定使玩家蹲伏或站立,根据所走的线路不同来从新设置布尔值为下一次按键输入做准备(此时与动画蓝图【Player_AMBP】通信,实现动画切换的功能),然后来调整摄像机所在的弹簧臂组件的插槽偏移组件来实现视角的高度变换,利用时间轴来平滑变换时的动画,最后将不需更改的Y轴直接输入到下一帧,将需要更改的Z轴输入到下一帧(倒数第三个节点【插值】为更改的数值),从而实现角色的蹲伏效果

角色头部随玩家视角旋转,使用瞄准偏移来制作。首先调整左边栏目的【水平坐标】与【垂直坐标】的变量名称 (不改也可以)设置最大与最小值的范围(用于动画的判定),然后在下方栏目导入对应的动画。接下来是蓝图部分

在动画蓝图【Player_AMBP】中的事件图表编辑,大意为,获取摄像机与角色的朝向,计算其差值并拆分成为Y轴插值与Z轴插值,分别进行角度的限制(用于控制扭头范围,角色的头不可能360°无死角转动),将限制后的数值进行合并成为旋转体,同时获取上一帧角色头部的朝向,使用【R插值到】蓝图节点来将 上一帧角色头部的朝向 平滑的变换成 限制后的目标数值(准确来说是每一帧执行一次)后将Y轴数值输出并为下一帧做准备,至于Z轴的数值要进行一次判断(要解决的问题是当你看向人物的时候人物会飞快的朝你看的反方向扭头,GTAV中就有这个问题,他们的解决方法是让动画变得平滑,角色是不会看着你的,我的方法是在你看向角色正面时角色面朝前方不动),判断Z轴的绝对值是否大于等于120°(大于则为你在看向角色),若是小于则正常将Z轴数值输出并为下一帧做准备,若是大于等于则将获取上一帧的Z轴值,使用蓝图节点【F插值到】来进行一个 上一帧角色头部的Z轴朝向 平滑的变换成 槽位【Target】中的数值 并为下一帧做准备(关于【R插值到】和【F插值到】的区别,【F插值到】是接受浮点类型的,而【R插值到】似乎是某种数值的组合,或许是旋转体的意思)

至此,功能完毕。

  • 12
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值