(公式)游戏中的物理公式

来源:互联网 发布:linux shell 判断大小 编辑:程序博客网 时间:2024/04/29 23:35

弓箭的运动:

dx = targetX- bowX;dy = targetY- bowY;angle = Math.atan2(dy,dx);

求出目标位置和弓箭绘制的弧度;

var gravity:Number = 1.45;var vx:Number = Math.cos(angle) * power;var vy:Number = Math.sin(angle) * power;addEventListener(Event.ENTER_FRAME, _fly);function _fly(e: Event): void {vy = vy + gravity;var degree: Number = Math.atan2(vy, vx);rotation = degree * 180 / Math.PI;x = x + vx;y = y + vy;}
然后根据弧度和power(力量或飞行速度),算出x和y方向的增量;

飞行过程中,y方向的增量(vy)加上重力系数,再根据增量求出每帧的增量弧度,再将弧度转换度数,则得到箭头飞行时角度的变化,最后x、y方向分别加上增量;

原创粉丝点击