目录
效果
步骤
一、安装射击武器
- 在虚幻商城中将"FPS Weapon Bundle"添加到工程中,由于我们使用的是5.1版本,我们可以先将该资产放入UE4工程中,然后迁移到5.1版本的工程
- 打开角色蓝图"BP_ThirdPersonCharacter"
添加一个骨骼网格体组件
这里命名为"Weapon_Gun"
父项套接字选择"hand_r"
我们为该骨骼网格体选择一个骨骼网格体资产,这里选择"SK_AR4"。可以看到武器的位置有点问题
调整一下变换
二、拿武器和收武器
- 打开项目设置,添加一个操作映射
- 在"AnimStarterPack"资源包中找到人物掏出武器的动画"Equip_Rifle_Standing"
使用IK重定向器导出选定动画资源
- 打开角色动画蓝图"ABP_Manny"
添加一个状态,这里命名为"EquipRifle"
添加一个布尔类型变量"IsEquipingRifle",用于表示当前是否正在拿出枪械
添加过渡规则
双击进入"EquipRifle"
添加动画输出姿势为"Equip_Rifle_Standing"
我们可以在动画预览编辑器中勾选"IsEquipingRifle"来预览角色的动画姿势
当角色拿出枪之后应该进入到拿枪的待机状态
在动画图表中添加一个状态,这里命名为"IdleRifle",用于表示角色拿着枪的待机状态
添加一个布尔类型变量,这里命名为"IsEquipedRifle",用于表示角色是否已经拿好枪械
添加过渡规则
接下来我们需要一个角色射击的待机动画。
- 在"AnimStarterPack"资源包中找到动画序列"Idle_Rifle_Hip",该动画就是角色射击状态的待机动画
通过IK重定向器导出适配角色的动画序列
- 回到角色动画蓝图中,将上一步导出的动画序列作为状态"IdleRifle"的输出动画姿势
可以在动画预览编辑器中勾选如下两个变量,来预览此时角色是否处于射击的待机状态
- 打开角色蓝图,添加如下节点
此时我们就能切换角色是否处于射击状态,效果如下
在默认状态下角色应该没有枪,因此我们应该设置枪默认不显示。选中组件"Weapon_Gun",取消勾选可视。
在玩家切换射击状态时切换武器的可视性
此时效果如下