|
楼主 |
发表于 2007-5-12 11:37
|
显示全部楼层
8:加入表达式,这里FrameNumber表示动画开始帧数是0,MaxFrame表示最大帧数为25帧,此数越大,所做动画
; D* k9 A$ {6 v# U, J 的时间就越长。FrameNumber可以看成是一个变量,从0至25之间变化。" j* ^$ M9 t; j
表达式A是控制弓的动作的,表达式A与B两者联合对箭的动作进行控制。& e. k9 E G' }- ?
在这里FrameNumber*7.2表示一个角度,当FrameNumber在0-25间变化时,角度就在0-180度间变化,前面
( x& ?, j% s, b4 l6 y 加了余弦cos,就表示值从1--0---1之间变化,后面乘上20并在最前面加上绝对值abs()表示值从20
5 O% V' i0 ?) I% ^' @ --0--20之间进行变化,从第4,5,6步可看出,当值从20变化到0时,是拉弓,值从0再变回20时是整/ N" O* i/ i& ?' }2 X1 O. |. g
把弓的回弹。以上就是弓的动作。
# j3 i6 i3 H& ^& T5 Z( l9 K 箭的动作就分开两步走,第一步就是和拉弓时的动作一样,用A表达式,第二步就是箭射出的动作,: x- Y; C' j3 K/ C
这里用了B表达式,可以看出值是在0-50间变化,乘上50,表示箭射出的速度要比弓回弹的速度快,再者,6 ~3 S) V5 E+ V$ R0 D# u5 L0 a) S
最后值是50,就表面箭就在弓前面,也就是说箭射出去了。2 H, y0 k7 {) E' a, s
大家可看看余弦函数的图形可加深理解! |
|