AdvancedLocomotionSystemV第五篇 C++ 实现角色八项运动

Posted Tanzq-blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AdvancedLocomotionSystemV第五篇 C++ 实现角色八项运动相关的知识,希望对你有一定的参考价值。

效果展示

查看所有文章

AdvancedLocomotionSystemV

思维导图

八向运动状态机展示

过渡条件

过渡条件解释:

可分享的条件名解释
Move F玩家按了W键,除了本身就在 Move F, 那么必触发这个条件,判断条件就是运动方向是向前的,这个条件就成立。
Move R玩家按了D键,除了本身就在 Move R, 那么必触发这个条件,判断条件就是运动方向是向右的,这个条件就成立。
Move B玩家按了S键,除了本身就在 Move B, 那么必触发这个条件,判断条件就是运动方向是向后的,这个条件就成立。
Move L玩家按了A键, 除了本身就在 Move L, 那么必触发这个条件,判断条件就是运动方向是向左的,这个条件就成立。

其中还有两个条件 Hips_Left、 Hips_Right,这个到之后才有作用,现在先不讲。

从右边移动转化到向左边移动,有一个过渡条件:

另外一边的过渡也是同样的道理。

动作融合

点击过渡条件之后会看到Blend Settings,这个就是动作融合度的一个设置,和条件融合一样,它也可以进行分享,

属性具体功能点此处

使用ChangeDirection配置之后他的下半身对动画的融合会更快一些。

状态动画融合

每一个状态机里面的动画都是由几个动画融合起来的,这样弄能够和其他状态下的动画流畅融合起来。

每个状态机动画应该融合那几个动画也就是根据上面的思路,这里用图片去说明应该融合哪些。

总结

  1. 方向的选定,要给一个缓冲区,让动画有时间去融合,而不是突然变化。
  2. 动画的过渡,确定每个方向有多少融合度,将对应动画的一部分融合进去,当动画机状态之间进行转化的时候就不会显得那么突然。

以上是关于AdvancedLocomotionSystemV第五篇 C++ 实现角色八项运动的主要内容,如果未能解决你的问题,请参考以下文章

AdvancedLocomotionSystemV第八篇 C++ 实现角色翻滚和跳跃动作

AdvancedLocomotionSystemV第八篇 C++ 实现角色翻滚和跳跃动作

AdvancedLocomotionSystemV第八篇 C++ 实现角色翻滚和跳跃动作

AdvancedLocomotionSystemV第七篇 C++ 实现角色蹲伏和跑步细节

AdvancedLocomotionSystemV第七篇 C++ 实现角色蹲伏和跑步细节

AdvancedLocomotionSystemV第二篇 C++ 实现镜头跟随人物缓慢移动