一、Animator 主要用于

  1. 什么时候使用动画剪辑
  2. 控制动画剪辑之间的过渡或混合

二、创建一个Animator

1,在对象上添加一个Animator 组件:

Unity 获得animator的时间 unity3d animator_3d

2,添加一个Animator Controller 对象 (如果是人形角色,需要添加Avatar),拖拽到 Controller 即可

Unity 获得animator的时间 unity3d animator_动画_02

3,添加一个Controller,点击箭头标记 1 处可以选择筛选后的 Conroller,再双击,或者直接拖拽挂载。挂载后可看到第二张图中 框内数据变化。

Unity 获得animator的时间 unity3d animator_动画_03

Unity 获得animator的时间 unity3d animator_Unity 获得animator的时间_04

 4,开启Animator的编辑窗口,选择含有Animator的组件。

Unity 获得animator的时间 unity3d animator_unity_05

Unity 获得animator的时间 unity3d animator_Unity 获得animator的时间_06

三、Animator 组件参数意义

1,组件参数含义

Unity 获得animator的时间 unity3d animator_数据_07

属性:

功能:

Controller

附加到此角色的 Animator Controller。

Avatar

此角色的Avatar。(如果 Animator 用于对人形角色进行动画化)

Apply Root Motion

选择从动画本身还是从脚本控制角色的位置和旋转。

Update Mode

此选项允许您选择 Animator 何时更新以及应使用哪个时间标度。

Normal

Animator 与 Update 调用同步更新,Animator 的速度与当前时间标度匹配。如果时间标度变慢,动画将通过减速来匹配。

Animate Physics

Animator 与 FixedUpdate 调用同步更新(即,与物理系统步调一致)。如果要对具有物理交互的对象(例如可四处推动刚体对象的角色)的运动进行动画化,应使用此模式。

Unscaled Time

Animator 与 Update 调用同步更新,但是 Animator 的速度忽略当前时间标度而不顾一切以 100% 速度进行动画化。此选项可用于以正常速度对 GUI 系统进行动画化,同时将修改的时间标度用于特效或暂停游戏。

Culling Mode

您可以为动画选择的剔除模式。

Always Animate

始终进行动画化,即使在屏幕外也不要剔除。

Cull Update Transforms

未显示渲染器时,禁用变换组件的重定向、IK(反向动力学)和写入。

Cull Completely

未显示渲染器时,完全禁用动画。

 2,红框中的参数

Unity 获得animator的时间 unity3d animator_动画_08

标签

描述

Clip Count

分配给此 Animator 的 Animator Controller 使用的动画剪辑总数。

Curves (Pos, Rot & Scale)

由 Unity 用于动画化游戏对象位置、旋转或缩放的曲线总数。这些曲线用于不属于标准人形骨架的动画游戏对象。在对人形 Avatar 进行动画化时,这些曲线会显示额外非肌肉骨骼(例如尾巴、飘逸的布料或悬垂的吊坠)的计数。如果您有人形动画并发现意外的非肌肉动画曲线,表示动画文件中可能有不必要的动画曲线。

Muscles

此 Animator 用于人形动画的肌肉动画曲线数量。这些是用于对标准人形 Avatar 肌肉进行动画化的曲线。除了 Unity 的标准 Avatar 中所有人形骨骼的标准肌肉运动外,此处还包括用于存储根运动位置和旋转动画的两条“肌肉曲线”。

Generic

由 Animator 用于动画化其他属性(如材质颜色)的数字(浮点)曲线数量。

PPtr

精灵动画曲线(由 Unity 的 2D 系统使用)的总数

Curves Count

动画曲线的合计总数

Constant

优化为常量(不变)值的动画曲线数量。如果动画文件包含了具有不变值的曲线,Unity 会自动选择此项。

Dense

使用“密集”数据(通过线性内插的离散值)存储方法进行优化的动画曲线数量。与“流”方法相比,此方法使用的内存少得多。

Stream

使用“流”数据(这些值具有用于曲线插值的时间和切线数据)存储方法的动画曲线数量。与“密集”方法相比,此数据占用的内存多得多。