转换定义了状态机何时以及如何从一个状态切换到另一个状态。 AnimatorStateTransition 始终源自动画器状态(或 AnyState)并具有计时参数。
当满足所有条件时,就会发生转换。 AnimatorStateTransition 派生自 AnimatorTransitionBase。
canTransitionToSelf | 设置为 true 以允许或不允许在 AnyState 转换期间向自身转换。 |
duration | 转换的持续时间。 |
exitTime | 如果 AnimatorStateTransition.hasExitTime 为 true,则 exitTime 表示转换生效的确切时间。这以归一化时间表示,例如,0.75 的退出时间表示在动画播放 75% 的第一帧时,退出时间条件将为 true。在下一帧,条件将为 false。对于循环动画,退出时间小于 1 的转换将在每个循环中进行评估,因此您可以使用它来在每个循环中根据动画的正确时间安排您的转换。退出时间大于 1 的转换将仅评估一次,因此它们可用于在固定次数的循环后特定时间退出。例如,退出时间为 3.5 的转换将评估一次,在三个半循环后。 |
hasExitTime | 激活时,转换将具有退出时间条件。 |
hasFixedDuration | 确定转换的持续时间是以秒为单位的固定持续时间还是归一化时间。 |
interruptionSource | 哪些 AnimatorState 转换可以中断转换。 |
offset | 目标状态开始的时间。 |
orderedInterruption | 转换可以被具有更高优先级的转换中断。 |
AnimatorStateTransition | 创建一个新的动画器状态转换。 |
conditions | 需要满足的 AnimatorCondition 条件才能发生转换。 |
destinationState | 转换的目标状态。 |
destinationStateMachine | 转换的目标状态机。 |
isExit | 转换目标是否是当前状态机的退出。 |
mute | 静音转换。转换永远不会发生。 |
solo | 静音源状态中的所有其他转换。 |
hideFlags | 对象是否应隐藏、与场景一起保存或用户可修改? |
name | 对象的名称。 |
AddCondition | 用于向转换添加条件的实用程序函数。 |
RemoveCondition | 用于从转换中删除条件的实用程序函数。 |
GetInstanceID | 获取对象的实例 ID。 |
ToString | 返回对象的名称。 |
Destroy | 删除 GameObject、组件或资产。 |
DestroyImmediate | 立即销毁对象 obj。强烈建议您改用 Destroy。 |
DontDestroyOnLoad | 加载新场景时不要销毁目标对象。 |
FindAnyObjectByType | 检索类型为 type 的任何活动加载对象。 |
FindFirstObjectByType | 检索类型为 type 的第一个活动加载对象。 |
FindObjectsByType | 检索类型为 type 的所有加载对象的列表。 |
Instantiate | 克隆对象 original 并返回克隆。 |
InstantiateAsync | 捕获原始对象(必须与某些 GameObject 相关)的快照,并返回 AsyncInstantiateOperation。 |
bool | 对象是否存在? |
operator != | 比较两个对象是否引用不同的对象。 |
operator == | 比较两个对象引用以查看它们是否引用同一个对象。 |