一.action_sets.xml
1.文件目录:Modules\Native\ModuleData\action_sets.xml
2.从属关系:
skel_animation = 外部骨骼动画资源
action_set(动画集) = animation_clip1 + animation_clip2 + animation_clip3
animation_clip(动画切片) = skel_animation + start_frame + end_frame + action_type + flag
3.通过在action_set.xml中配置animation_clip和type
<action_sets>
<action_set
id="as_human_warrior"
skeleton="human_skeleton"
movement_system="bipedal">
<action
type="act_troop_cavalry_sword"
animation="pose_cavalry_sword" />
</action_set>
</action_sets>
二.编辑器查看修改animation_clip,skel_animation
1.window->Show Resource Browser,过滤选项选择animation_clip,skel_animation
2.修改animation_clip起始帧,终止帧,clip持续时间
id: 用于其他系统的动画剪辑的ID
source1: 动画剪辑的启动关键帧
source2: 动画剪辑的末端关键帧
anim_data_name: 这个片段的源动画资源被导入到引擎中
duration: 此动画剪辑的持续时间,以秒为单位
三.骨架&骨骼&骨骼动画
1.骨架skeleton
#人物Agent骨架获取
Skeleton skel = Mission.MainAgent.AgentVisuals.GetSkeleton();
#GameEntity骨架获取
GameEntity.GetSkeleton()
2.骨骼
#获取骨骼数量
Skeleton.GetBoneCount();
#获取骨骼名称
Skeleton.GetBoneName();
#获取骨骼索引
Skeleton.GetBoneIndexFromName();
3.骨骼动画播放
#人物Agent骨骼动画播放
ActionIndexCache actionCodeForStandingPoint = ActionIndexCache.Create("act_jump_loop");
Mission.MainAgent.SetActionChannel(1, actionCodeForStandingPoint,
false, 0UL, 0f, 1f, -0.2f, 0.4f, 0f, false, -0.2f, 0, true);
#GameEntity-Agent骨骼动画播放
GameEntity.Skeleton.SetAnimationAtChannel("anim_bird_idle", 0, 1f, -1f, 0f);