动画组件用于播放动画。
您可以将动画剪辑分配给动画组件,并从脚本中控制播放。Unity 中的动画系统基于权重,支持动画混合、叠加动画、动画混合、图层以及对所有播放方面的完全控制。
有关 Unity 中动画脚本编写的概述,请阅读此简介。
AnimationState 可用于更改动画的图层、修改播放速度以及直接控制混合。
此外,Animation 支持枚举器。循环遍历所有 AnimationState 的方式如下所示
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { public Animation anim;
void Start() { anim = GetComponent<Animation>(); foreach (AnimationState state in anim) { state.speed = 0.5F; } } }
其他资源:Unity 中动画脚本编写的概述在此处。
animatePhysics | 启用后,物理系统将使用具有运动学刚体组件的 GameObjects 的动画变换来影响其他 GameObjects。 |
clip | 默认动画。 |
cullingType | 控制此 Animation 组件的剔除。 |
isPlaying | 当前是否正在播放动画? |
localBounds | 此 Animation 动画组件在本地空间中的 AABB。 |
playAutomatically | 默认动画剪辑(Animation.clip 属性)是否应在启动时自动开始播放? |
this[string] | 返回名为 name 的动画状态。 |
updateMode | 指定 Animation 的更新模式。 |
wrapMode | 剪辑播放范围之外的时间应如何处理? |
AddClip | 使用名称 newName 将剪辑添加到动画中。 |
Blend | 在接下来的 time 秒内,将名为 animation 的动画混合到 targetWeight。 |
CrossFade | 在由 fadeLength 定义的一段时间内淡入名为 animation 的动画。 |
CrossFadeQueued | 在之前的动画播放完成后淡入动画。 |
GetClipCount | 获取当前分配给此动画的剪辑数量。 |
IsPlaying | 名为 name 的动画是否正在播放? |
Play | 播放动画,不进行混合。 |
PlayQueued | 在之前的动画播放完成后播放动画。 |
RemoveClip | 从动画列表中移除剪辑。 |
Rewind | 倒回名为 name 的动画。 |
Sample | 在当前状态下采样动画。 |
Stop | 停止使用此 Animation 启动的所有正在播放的动画。 |
enabled | 启用的行为会被更新,禁用的行为不会被更新。 |
isActiveAndEnabled | 报告 GameObject 及其关联的行为是否处于活动状态并已启用。 |
gameObject | 此组件附加到的游戏对象。组件始终附加到游戏对象。 |
tag | 此游戏对象的标签。 |
transform | 附加到此 GameObject 的 Transform。 |
hideFlags | 对象是否应隐藏、与场景一起保存或用户可修改? |
name | 对象的名称。 |
BroadcastMessage | 在此游戏对象或其任何子对象中的每个 MonoBehaviour 上调用名为 methodName 的方法。 |
CompareTag | 将 GameObject 的标签与定义的标签进行比较。 |
GetComponent | 获取与指定组件相同的 GameObject 上类型为 T 的组件的引用。 |
GetComponentInChildren | 获取与指定组件相同的 GameObject 或任何子对象上类型为 T 的组件的引用。 |
GetComponentIndex | 获取组件在其父 GameObject 上的索引。 |
GetComponentInParent | 获取与指定组件相同的 GameObject 或任何父对象上类型为 T 的组件的引用。 |
GetComponents | 获取与指定组件相同的 GameObject 上所有类型为 T 的组件的引用。 |
GetComponentsInChildren | 获取与指定组件相同的 GameObject 及其任何子对象上所有类型为 T 的组件的引用。 |
GetComponentsInParent | 获取与指定组件相同的 GameObject 及其任何父对象上所有类型为 T 的组件的引用。 |
SendMessage | 在此游戏对象中的每个 MonoBehaviour 上调用名为 methodName 的方法。 |
SendMessageUpwards | 在此游戏对象及其行为的每个祖先上调用名为 methodName 的方法。 |
TryGetComponent | 获取指定类型的组件(如果存在)。 |
GetInstanceID | 获取对象的实例 ID。 |
ToString | 返回对象的名称。 |
Destroy | 移除 GameObject、组件或资源。 |
DestroyImmediate | 立即销毁对象 obj。强烈建议您改用 Destroy。 |
DontDestroyOnLoad | 加载新场景时不要销毁目标对象。 |
FindAnyObjectByType | 检索类型为 type 的任何活动加载对象。 |
FindFirstObjectByType | 检索类型为 type 的第一个活动加载对象。 |
FindObjectsByType | 检索类型为 type 的所有加载对象的列表。 |
Instantiate | 克隆对象 original 并返回克隆。 |
InstantiateAsync | 捕获原始对象(必须与某个 GameObject 相关)的快照,并返回 AsyncInstantiateOperation。 |
bool | 对象是否存在? |
operator != | 比较两个对象是否引用不同的对象。 |
operator == | 比较两个对象引用以查看它们是否引用相同的对象。 |