【腾讯GAD暑期训练营游戏程序开发】游戏中的动画系统作业

时间:2023-12-27 18:34:19

游戏中的动画系统作业说明文档

 

一、实现一个动画状态机:至少包含3组大的状态节点

【腾讯GAD暑期训练营游戏程序开发】游戏中的动画系统作业

动画状态机如图所示,其中Blend Tree_Run是一个动画混合树,Blend为混合树的参数,speed为控制动作过渡的参数,共有蹲下空闲状态、走路状态、跑路状态三种状态。

(1)    当speed大于0.1时,由蹲下的空闲状态转换为走路状态。

【腾讯GAD暑期训练营游戏程序开发】游戏中的动画系统作业

(2)    当speed小于0.1时,由走路状态转换回蹲下空闲状态。

【腾讯GAD暑期训练营游戏程序开发】游戏中的动画系统作业

(3)    当speed大于0.2且在走路状态时,可转换为动画混合树制作的跑步状态。

【腾讯GAD暑期训练营游戏程序开发】游戏中的动画系统作业

(4)    当speed小于0.2且在跑步状态时,可转换为走路状态。

【腾讯GAD暑期训练营游戏程序开发】游戏中的动画系统作业

二、其中一个状态节点要包含动画混合树

【腾讯GAD暑期训练营游戏程序开发】游戏中的动画系统作业

如图动画混合树,用了以上四种状态混合出了一个跑步状态。

【腾讯GAD暑期训练营游戏程序开发】游戏中的动画系统作业

三、至少计算出一个区别动画,并叠加到多个基本动画中

(1)如上图,新建了一个层级Wave。

(2)在新的Layers中添加了Null状态和Wave状态,并设置了过渡条件。

【腾讯GAD暑期训练营游戏程序开发】游戏中的动画系统作业

(3)增加了一个body mask命名为Wave,设置它的影响范围只有一只手(绿色为受影响的部分,红色为不受影响的部分)。

【腾讯GAD暑期训练营游戏程序开发】游戏中的动画系统作业

(4)设置层级的Mask为Wave。

【腾讯GAD暑期训练营游戏程序开发】游戏中的动画系统作业

(5)将左图的动画叠加到右图中,可以看到右图中只有手受到了影响,类似一个摸头挥手的动作。

【腾讯GAD暑期训练营游戏程序开发】游戏中的动画系统作业