我正在iPhone上制作等距游戏,需要一些帮助。如果一个对象从一个区块扔到另一个区域,那么计算对象必须采用的路径的最佳方法是什么?我一直在研究使用NSBezierPaths,但是不能完全弄清楚如何将它们用于对象路径?任何帮助将不胜感激!
答案 0 :(得分:0)
我建议不要使用矢量图形(NSBezierPath)来完成你需要完成的任务。
您可以使用CGPoint来表示每个游戏对象的位置(假设这是一个2D游戏)。 (将此结构放在GameObject类中。)
struct objectPhysics
{
CGPoint position;
CGPoint velocity;
}
使用速度和方向向量计算对象的轨迹。假设以下是向量:
position = position * velocity * timeDifference;
当事件发生时(例如用户点击某个物体或检测到碰撞),将速度矢量设置为值(1,0.5)或其他意味着在X方向上移动+1而在Y中移动0.5每帧的方向(如果你有“* timeDifference”,则为时间单位)。
您应该查看this site有关开始游戏编程的提示以及您需要的一些vector math,以便计算加速所需的方向。
时差是衡量自上一帧使用以来确保对象移动正确距离以与帧速率保持同步的时间。