找回密码
 注册帐号

扫一扫,访问微社区

混合树(blendtree)

2015-1-6 07:21| 发布者: 杨炎| 查看: 1623| 评论: 0|原作者: 蛮牛|来自: unity3d脚本manual

摘要: 混合树 (blend tree)游戏动画中的一个常见任务是在两个或更多相似运动之间混合。最佳的已知示例可能是根据角色速度混合行走和奔跑动画。另一个示例是角色在奔跑过程中转弯时向左或向右倾斜。重要的是区分转换 (trans ...

混合树 (blend tree)

游戏动画中的一个常见任务是在两个或更多相似运动之间混合。最佳的已知示例可能是根据角色速度混合行走和奔跑动画。另一个示例是角色在奔跑过程中转弯时向左或向右倾斜。

重要的是区分转换 (transition) 与混合树 (blend tree)。虽然两者都用于创建平滑动画,但是它们用于不同类型的情况。

转换 (transition)用于在给定时间量内从一个动画状态 (animation state) 平滑转换为另一个状态。转换指定为动画状态机 (animation state machine)的一部分。如果转换迅速,则通常可从一个运动很好地转换为完全不同的运动。

混合树 (blend tree)用于允许通过按不同程度组合所有动画的各个部分来平滑混合多个动画。各个运动参与形成最终效果的量使用混合参数进行控制,该参数只是与动画器控制器 (animator controller) 关联的数值动画参数之一。要使混合运动有意义,混合的运动必须具有相似性质和时间。混合树 (blend tree) 是动画器控制器 (animator controller) 中的特殊状态类型。

相似运动示例可以是各种行走和奔跑动画。要使混合工作良好,片段中的移动必须在相同的规范化时间点发生。例如,行走和奔跑动画可以对齐,以便脚与地面接触的时刻在相同的规范化时间点发生(例如,左脚在 0.0 踏地,而右脚在 0.5 踏地)。因为使用规范化时间,所以片段是否具有不同长度无关紧要。

要开始使用新混合树 (blend tree),需要:

右键单击动动画器控制器窗口 (animator controller window)上的空白空间

从出现的上下文菜单中选择创建状态 (create state) > 从新混合树 (from new blend tree)。

双击混合树 (blend tree) 以进入混合树图 (blend tree graph)。

动画器控制器窗口 (animator controller window) 现在显示整个混合树 (blend tree) 的图形,而检视器 (inspector) 显示当前选择的节点及其直接子级。

动画器窗口 (animator window) 显示整个混合树 (blend tree)的图形。左侧是仅包含根混合节点 (blend node) 的混合树 (blend tree)。右侧是包含根混合节点 (blend node) 以及以三个动画片段 (animation clip) 作为子节点的混合树 (blend tree)。

这会为参数值变化时的动画组合方式提供图形可视化(在拖动滑块时,源自树根的箭头会改变其底纹以显示主要动画片段)。

可以在混合树 (blend tree) 图中选择任何节点以在检视器 (inspector) 中检视它。如果所选节点是动画片段 (animation clip),则会显示该动画片段 (animation clip) 的检视器 (inspector)。如果动画是从模型导入,则设置是只读的。如果节点是混合节点 (blend node),则会显示混合节点 (blend node) 的检视器 (inspector)。

任何运动之前在检视器 (inspector)中显示的混合节点 (blend node) 已添加。

混合类型”(blend type) 下拉菜单用于选择可以根据一个或两个参数混合的不同混合类型之一。可以在以下页面上了解有关不同混合类型和其他混合树 (blend tree) 选项的更多信息。

一维混合 (1d blending)

二维混合 (2d blending)

其他混合树 (blend tree) 选项

(返回mecanim 简介)

上一篇:相机下一篇:箱体碰撞体(boxcollider)

相关阅读

文章点评
相关文章