Animator组件的运用|走路并挥手

一、Animator组件

Animator组件的运用|走路并挥手

  1. Controller:动画控制器Animator Controller;
  2. Avatar:骨骼文件,仅当GameObject是人形角色时,才定义Avatar;
  3. Apply Root Motion:绑定该组件的GameObject的位置是否可以由动画进行改变(如果存在改变位移的动画);
  4. Update Mode:更新模式
    1. Normal:表示使用Update进行更新;
    2. Animate Physics:表示使用FixUpdate进行更新(一般用在和物体有交互的情况下);
    3. Unscale Time:表示无视timeScale进行更新(一般用在UI动画中)。
  5. Culling Mode:剔除模式:
    1. Always Animate:即使摄像机看不见也要进行动画播放的更新
    2. Cull Update Transform:当摄像机看不见时,停止动画播放,但是位置会继续更新
    3. Cull Completely:表示摄像机看不见时,停止动画的所有更新。

二、实现人物在走路的同时挥手

  • 下载模型资源:提取码:b7i6
  • 导入到Unity中,将人物模型拖入场景,添加Animator组件(如果没有的话);
  • 创建Animator Controller,赋给Animator组件;
  • 打开Animator编辑器

Animator组件的运用|走路并挥手

  • Weight:权重,默认的层的权重为1;当新建层的权重为0时,该层的动画不会播放,设置成1会全部播放,0~1则部分播放;
  • Mask:遮罩,Avatar Mask可以用来实现丢弃一些动画数据,只允许某些部位的动画起作用。很经典的例子是一边播Run、Walk、Idle动画时一边挥手。
  • Blending:动画混合方式:
    • Override:覆盖,表示当前层的动画会覆盖掉其它层的动画;
    • Additive:添加,表示当前层的动画会添加到其它层。
  • Sync:同步层,可以同步某一层的状态。
  • IK Pass:是否启动IK动画。

  • 将走路动画拖入Animator面板(走路动画自带位移),运行Unity,我们可以看到人物在向前走。

Animator组件的运用|走路并挥手

  • 新建Layer层WaveLayer,将挥手动画拖入Animator面板,设置该层Weight=1,Blending为Additive,运行Unity,我们可以看到人物在向前走的同时还在挥手。

Animator组件的运用|走路并挥手 Animator组件的运用|走路并挥手
Animator组件的运用|走路并挥手

  • 当WaveLayer层Weight=0.5,Blending为Additive时,挥手动作只会抬一半,效果如下图:

Animator组件的运用|走路并挥手


发布了162 篇原创文章 · 获赞 20 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/weixin_39766005/article/details/85240968
今日推荐