跳到主要内容

Anim

Anim 组件用于将 animstategraph 资源及其所需的全部动画资源连接到一个实体。

Anim 组件

属性​

属性说明
自动激活(Activate)启用后,场景启动时自动开始播放动画。
速度(Speed)状态图全部动画的播放速度,1 为正常,0.5 为半速,2 为两倍速,范围为 0 到 2。
根骨骼(Root Bone)可选,指定动画根骨骼实体。模型层级不位于实体顶层时尤其有用。
归一化权重(Normalize Weights)将全部图层权重归一化,使总和为 1,影响图层混合计算。
状态图(State Graph)定义此实体动画状态机的 animstategraph 资源。

分配动画资源​

选择 animstategraph 资源后,Anim 组件会按图层显示动画资源槽位。状态图每层的各动画状态都有一个槽位,START、END 和 ANY 除外。在这里将实际动画数据连接到已创建的状态图。

分配了状态图的 Anim 组件

多个 Anim 组件可以共享同一 animstategraph 资源,同时各自使用不同的动画资源。填满全部状态槽位后,组件即可播放。启用 Activate 时会自动播放;否则需在脚本中设置 entity.anim.playing = true,并调用各层的 play(),例如 entity.anim.baseLayer.play()。

图层遮罩​

状态图中的每层都可以设置可选遮罩,限制该层动画影响哪些骨骼。例如,下半身播放行走动画,同时上半身播放挥手动画。

创建遮罩按钮

单击图层名称旁的 CREATE MASK,即可打开遮罩检查器并创建遮罩。

遮罩检查器​

遮罩检查器以树状结构显示模型层级的全部骨骼。每根骨骼旁的复选框决定该图层动画是否影响它。

遮罩检查器

遮罩检查器提供以下控件:

控件说明
ADD ALL / ADD SELECTED启用全部骨骼;如果选中了部分骨骼,则仅启用所选骨骼。
REMOVE ALL / REMOVE SELECTED禁用全部骨骼;如果选中了部分骨骼,则仅禁用所选骨骼。
Add hierarchy(右键菜单)启用该骨骼及其全部子骨骼。
Remove hierarchy(右键菜单)禁用该骨骼及其全部子骨骼。

单击 EDIT MASK 可编辑现有遮罩;单击图层旁的垃圾桶图标可删除遮罩。

另请参阅​

  • 动画:了解动画系统。

脚本接口​

可以通过 Script 组件控制 Anim 组件属性。接口详见 AnimComponent。