魔兽地图编辑器吧 关注:65,972贴子:3,848,927
  • 0回复贴,共1页

抛物线/跳跃/模拟投射物/多次弹跳 算法原理 无演示

取消只看楼主收藏回复

变量
高度(实数) Z 
垂直方向速度(实数 取上为正方向) v
重力加速度(实数) g
原理
在做抛物线运动时
根据受力分析` 物体始终受到向下的重力的作用,重力的作用使物体在垂直方向的速度每秒都会变化一个固定值 g
物体在碰到地面时,会以相反的方向(向上)弹起
算法
首先设置g = g * 每次运动间隔时间 
(比如每0.02秒执行运动的 就乘0.02)
-------
每间隔时间运行
设置 v = v - g //重力影响速度
设置 Z = Z + v //速度改变位移
如果 Z < 0 //单位到达地面时
   设置 v = v * -1 //设置速度反向(碰到地面则反弹)
   设置 Z = Z * -1 //设置高度为反弹后的应有高度
设置单位的飞行高度为 Z
-------
效果如图~~


1楼2009-09-24 11:07回复