【原创】霸王龙移动相关动画控制脚本,使用动画层放3dsMAX中预先编排好的骨骼动画 

2011-05-24 00:09 发布

4021 4 0
本帖最后由 xukejing 于 2011-5-24 00:24 编辑

定义animation["idle"].layer的权重来做动画叠加,比如你有两个动画,一个是霸王龙张嘴,一个是霸王龙摇尾巴,你可以把这两个动作以动画层的形式来叠加,一边张嘴,一边摇尾巴。如果摇尾巴的动画是尾巴向左摇而张嘴时候尾巴是向右,你不希望1+(-1)=0的效果,则可以使用权重来控制,比如说向左摇占0.8,向右摇占0.2。
下面是一段代码,用于处理霸王龙的站立,行走,奔跑和转向各动画层的平滑衔接。在代码中,我把移动动画的层都设为了“1”,实际使用时你可能要把它们设为“-1”,因为在某些引擎上面,动画层权重的数值用的是补码计算,负数在内存中的存取二进制第一位是1,实际上负数越小,他的值越大。
同样的,这段代码只是按条件做动作。游戏和实际世界不一样,实际世界是先有奔跑的动作,后有你的速度改变,而在游戏里面,动作渲染和物理模型是分开的。先由物理模型计算得到速度,然后再根据这个速度去使用相应的动作去适合他
我声明了一个变量minimumRunSpeed = 1.0,当移动速度超过这个值以后开始切换到奔跑动画层。当检测到有左转或右转角速度时,打开左转或者右转动画层。代码在附件中给出。
TrexAIAnimation.js (850 Bytes, 下载次数: 114)

TA的作品 TA的主页
B Color Smilies

全部评论4

你可能喜欢

【原创】霸王龙移动相关动画控制脚本,使用动画层放3dsMAX中预先编排好的骨骼动画 
联系
我们
快速回复 返回顶部 返回列表