UE4---动画状态机


前言

动画状态机是可以让动画从一个过渡到另一个的过程,它大大简化了动画的设计流程。可以实现很多的基础动作,例如:跑,跳,上天,游泳等一系列动作。

1动画蒙太奇(介绍)

是一种多功能工具,通过它可以实现多种动画效果,主要与公开代码或 蓝图可视脚本 中的动画控件相关。它也可用于创造各种动画效果,包括动画的智能循环,基于逻辑的动画切换等。

蒙太奇是可以创建并存在于 内容浏览器 中的动画资产。可在运行时将这些资产直接插入动画图中,并修改它的任何状态。能够控制触发器,在需要的时候停止,或者变换状态(循环或不循环)。

2动画蓝图

运用:在角色蓝图中嵌入动画蓝图,在角色蓝图中的Mesh选项中Animation加入已有的动画蓝图。

结构:动画蓝图主要分为EnentGraph事件图,AnimGraph动画图。

EnentGraph:事件图,在事件图中每一帧都会检测,获取模型数据,并将获取的数据赋值给变量。

AnimGraph:动画图,包含状态机,状态机根据变量执行对应的动作。

Blendspace:线性混合,复合节点,根据不同的数据,控制模型动作之间的切换。

变量:动画蓝图中定义的Variables变量,EnentGraph和AnimGraph中均可以访问,一般在EnentGraph中设置变量,在AnimGraph使用变量(也可以从角色蓝图中获取变量)。

3动画节点

1.参数

基础姿势(Base Pose)
目标姿势(Blend Pose 0)
混合权重 (Blend Weights 0)

2.配置

分支过滤器
1.骨骼名称:要混合的骨骼链起始骨骼
2.混合深度:混合过度的层数(从起始骨骼算起,到第几层才混合到百分百,每层叠加 1/深度)

3.用法

1.百分百混合整条骨骼链:混合深度=0
2.从指定骨骼起,到第N层子骨骼为止逐渐混入新动作:混合深度=N
3.取消子骨骼一下所有骨骼的混合:混合深度=-1

4制作流程

1.先导入所需要的模型
2. 新建一个动画蓝图,Animation->AnimationBlueprint,继承AnimationInstance,然后选择相应的骨骼。
3. 在MyBlueprint下的AddNew两个Variables,float类型的speed,boolean类型的IsAttack。
4. 右上角的Animation,create Asset/Blend 1D,右侧选择Idle动画,让x=0,设置run动画,在parametres下,XAxisLabel命名为speed,然后apply应用。
5. 右上角的Graph,选择,Event Graph,Attack可以通过Cast M有Third Hero获取到。
6. 选择AnimGraph,Add new State Machine,命名为dafalt,然后连接。
7.

总结

第一次学习ue4的动画状态机,感觉东西很多很杂,需要扩展的东西也很多,得需要一些时间和一些项目才能真正的领悟。

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值