动画系统

Mecanim

Mecanim 是Unity一个丰富且精密的动画系统,提供了:

  • 为人形角色提供的简易工作流和动画创建能力
  • Retargeting(动画重定向)功能,即把动画从一个角色模型应用到另一个角色模型上
  • 针对Animation Clip(动画片段)的简单工作流
  • 一个用于管理动画间复杂交互作用的可视化编辑工具
  • 通过不同逻辑来控制不同身体部位运动的能力

Mecanim Workflow

  • 资源的准备和导入(3Dmax/Maya):在Project中右键,Import Package -> Characters

  • 模型与动画设置:

    • Model:模型的网格、材质等模型渲染相关的设置
    • Rig:模型骨骼的设置
    • Animations :模型动画片段的设置

Animation Clip(动画片段)

  • 动画片段是 Unity 中的最小的动画构成的模块 用于表示一段独立的动画效果,比如行走、 奔跑、 跳跃
  • Project视图中选择模型资源,并在 Inspector 视图中点击 Animation 标签,即可在 Inspector 视图中找到该模型所包含的所有的动画片段

Animator组件

  • 用于控制游戏对象的动画

  • 选择游戏对象 -> Component菜单 -> Miscellaneous -> Animator

  • 属性:

    • Animator Controller:动画控制器
    • Avatar:角色替身
    • Apply Root Motion:角色的位移或旋转是否由动画片段控制

Animation State Machine(动画状态机)

  • 控制角色动画片段的播放和切换

  • 状态:每个状态对应对应一个动画

  • 状态过渡:改变角色所处的状态

  • 参数:状态过渡时与限制条件相关的参数

  • 添加Animator Controller:Project中右键Create -> Animator Controller

  • 打开Animator视图:Windows菜单栏-> Animator

  • 添加状态:空白处右键 -> Create State -> Empty

  • 状态的属性:

    • 名称
    • Motion:状态播放的动画片段
    • Speed:动画片段的播放速度
  • 添加状态过渡:状态上右键Make Transition

  • 状态过渡参数:

    • Has Exit Time:状态过渡是否有退出时间
    • Exit Time:退出时间
    • 状态过渡曲线
    • Conditions:状态过渡条件设置
  • 使用脚本控制动画参数

Animation Layer(动画层)

  • 用于合成身体不同部位的动画

  • Animation Layer属性:

    • weight:动画层权重
    • mask:身体遮罩

Avatar Mask(身体遮罩)

  • 使开发者选择性地启用或禁用人形角色相关关节,以控制动画片段对人形角色的影响:启用的关节受动画控制产生动作,禁用的关节不受动画的控制
  • 新建:Project视图中右键 -> Create -> Avatar Mask
  • Humanoid:人形角色关节设置,绿色代表启用,红色代表禁用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值