Version: 6000.3
语言: 中文
1D 混合
直接混合

2D混合

中的第一个选项检查器一个 Unity 窗口,显示有关当前选定游戏对象、资产或项目设置的信息,允许您检查和编辑值。更多信息
请参阅术语表
混合节点(Blend Node) 混合树图表中的一个节点,用于混合动画剪辑节点。更多信息
请参阅术语表
混合类型(Blend Type) 。此下拉列表用于选择可以根据一个或两个参数进行混合的不同混合类型之一。2D 混合类型根据两个参数混合子运动。

不同的2D混合类型具有不同的用途,适合使用。它们在计算每个运动的影响的方式上有所不同。

2D 简单方向:当您的运动表示不同的方向时,最好使用,例如“向前行走”、“向后向后行走”、“向左行走”和“向右行走”,或“向上瞄准”、“向下瞄准”、“向左瞄准”和“向右瞄准”。(可选)可以在位置 (0, 0) 处包含单个运动,例如“空闲”或“直线瞄准”。在简单方向类型中,不应在同一方向上有多个运动,例如“向前行走”和“向前跑”。

2D 自由形状方向(2D Freeform Directional) :当运动表示不同方向时,也使用此混合类型,但是可以在同一方向上进行多个运动,例如“向前行走”和“向前跑”。在 自由形状方向(Freeform Directional) 类型中,运动集应始终在位置 (0, 0) 处包含单个运动,例如“空闲”。

2D 自由形腕表:当您的运动不表示不同的方向时,最好使用。使用自由形腕表,您的 X 参数和 Y 参数可以表示不同的概念,例如角速度和线速度。例如,诸如“向前行走不转弯”、“向前跑不转弯”、“向前走右转”、“向前跑右转”等运动。

直接:这种类型的混合树允许用户直接控制每个节点的权重。对于面部形状或随机空闲混合很有用。

设置混合类型后,首先需要选择两个动画参数用于在脚本和动画师控制器之间进行通信。某些参数可以在脚本中设置并由控制器使用,而其他参数则基于动画剪辑中的自定义曲线,可以使用脚本 API 进行采样。更多信息
请参阅术语表
,这将控制此混合树。在此示例中,参数为 velocityX(扫射)和 velocityZ(前进速度)。

然后,你可以通过点击 + -> 添加运动场(Add Motion Field) 来添加单个动画,将动画剪辑添加到混合树中。完成后,它应该如下所示:

具有五个动画剪辑的2D混合节点。
具有五个动画剪辑的2D混合节点。

2D 混合中的位置类似于 1D 混合中的阈值,不同之处在于有两个值而不是一个值,对应于两个参数中的每一个。它们沿水平 X 轴的位置对应于第一个参数,它们沿垂直 Y 轴的位置对应于第二个参数。向前行走动画的 velocityX 可能为 0,velocityZ 为 1.5,因此应将这些值键入运动的 Pos X 和 Pos Y 数字字段中。

2D 混合图

检查器顶部的图表显示了子运动在 2D 混合空间中的位置。运动显示为蓝点。没有动议动画剪辑(Animation Clip可用于动画角色或简单动画的动画数据。它是一个简单的“单位”运动片段,例如(一个特定实例)“空闲”、“步行”或“运行”。更多信息
请参阅术语表
或分配的混合树对混合没有影响,并显示为灰色点。您可以通过单击图表中的点来选择运动。选择后,该运动对混合空间中每个点的影响将可视化为蓝色场。该场在运动位置的正下方最强,运动具有完全的影响,这意味着其动画权重为 1,而其他动画的权重为 0。越远,随着其他运动的影响接管,影响会减弱。

混合节点检查器顶部的图表可视化了子运动在参数值延伸上的权重。
混合节点检查器顶部的图表可视化了子运动在参数值延伸上的权重。

红点表示两个参数的值。如果按下检查器底部预览中的播放”并拖移图表中的红点,则可以看到参数值如何控制不同运动的混合。在图中,您还可以看到每个运动的影响,以每个运动周围的圆圈表示。您将看到,如果您将红点移动到代表运动的蓝点之一的顶部,则该运动的圆圈将获得其最大半径,而所有其他运动的圆圈将缩小为零。在多个运动之间的位置,附近的多个运动将对混合产生影响。如果您选择其中一个运动以查看该运动的蓝色影响场,您可以看到,当您四处移动红点时,运动的圆大小与影响场在不同位置的强度完全对应。

如果未选择任何运动,则该图显示所有影响场的混合,在单个运动占主导地位时,较为蓝色,而在许多运动对混合有贡献时,蓝色较少。

位置

您可以通过单击图表中相应的蓝点并将其拖动来更改运动的位置。您还可以通过在 Pos X 和 Pos Y 列的数字字段中键入数字来编辑运动列表中运动的位置坐标。

计算位置(Compute Positions) 下拉列表将根据你选择的数据设置位置,这些数据从中获取根运动角色根节点的运动,无论它是由动画本身控制还是外部控制。更多信息
请参阅术语表
在动画剪辑中。可供选择的数据是速度、速度 x、y 或 z,以及以度或弧度为单位的角速度。如果一个或两个参数对应于这些属性之一,则可以使用 计算位置(Compute Positions) 下拉菜单计算位置X和/或位置Y。

财产: 功能:
速度 XZ 根据每个运动的 velocity.x 设置 Pos X,根据其 velocity.z 设置 Pos Y。
速度和角速度 根据每个运动的角速度(以弧度每秒为单位)设置每个运动的 Pos X,根据其速度设置 Pos Y。

此外,你还可以通过选择 计算位置(Compute Position -> X Position From) 和/或 计算位置 -> Y 位置起点(Compute Position - Y Position From) 来混合和匹配,一次只自动计算其中一个,而另一个保持不变。

财产: 功能:
速度 根据每个运动的速度(速度的大小)设置每个运动的 Pos X 或 Pos Y。
速度 X 根据每个运动的 velocity.x 设置位置 X 或位置 Y。
速度 Y 根据每个运动的 velocity.y 设置 Pos X 或 Pos Y。
速度 Z 根据每个运动的 velocity.z 设置位置 X 或位置 Y。
角速度 (Rad) 根据每个运动的角速度(以弧度每秒为单位)设置每个运动的 Pos X 或 Pos Y。
角速度(度) 根据每个运动的角速度(以度/秒为单位)设置每个运动的 Pos X 或 Pos Y。

例如,假设您的参数对应于侧向速度和前进速度,并且您有一个平均速度为 (0, 0, 0) 的空闲动画、一个具有 (0, 0, 1.5) 的行走动画,以及两个速度分别为 (–1.5, 0, 0) 和 (1.5, 0, 0) 的扫射动画。从下拉列表中选择 速度 XZ 选项将根据这些速度的 X 和 Z 坐标设置运动的位置。

1D 混合
直接混合