射箭游戏编程算法

时间:2010-03-16 00:37:36

标签: algorithm

我需要算法根据2个参数设置箭头动画,拍摄时的角度和绘制弓的力量。 我曾尝试使用y = asinx,但只有在朝上拍摄时才有效。在向下或向下拍摄时不能正常工作。感谢。

2 个答案:

答案 0 :(得分:12)

你的射弹的飞行由

描述
x(t) = v * cos(theta) * t
y(t) = v * sin(theta) * t - 1/2 * g * t^2

其中t是时间,v是初始速度(功率),θ是角度,g是由重力引起的加速度(例如9.8 m / s ^ 2),x是水平坐标,y是高度。

答案 1 :(得分:7)

您可以尝试模拟运动而不是导出分析函数。即跟踪箭头的当前位置,速度和加速度矢量,以及每个时间增量,根据速度和速度根据加速度更新位置。

否则,如果您需要分析功能,请参阅@bnaul's answer了解分析版本