现实的2D赛车物理学有一个很好的起点吗?

我正试图让一辆现实的赛车进入我的二维自上而下的游戏。

制造一辆非常简单的汽车是非常简单的,但是我想要一个相当复杂的模型来模拟牛顿法则和汽车上的力量,从而获得很好的结果。

我在网上search了一个关于如何做这个的好教程,但是似乎没有太多的示例代码。

我遵循这个教程http://www.gamedev.net/topic/470497-2d-car-physics-tutorial/这是非常好的,似乎是一个很好的起点,但如果你有一个玩包括演示,你可以看到在一款令人信服的赛车之前,它仍然有一个公平的道路。

我听说一些像Unity这样的3D游戏引擎有一个很好的开箱车模型。 2D中有没有类似的东西?

只是想确保我不会错过一些我不知道的大的现有2D起点,然后花费大量的时间阅读并计算出从零开始构建自己所需的所有正确的力量。

这篇文章似乎描述所有你需要的东西: http : //www.asawicki.info/Mirror/Car%20Physics%20for%20Games/Car%20Physics%20for%20Games.html,但不幸的是源代码链接被打破。

这开始作为评论,但太长了。 🙂

如果是“现实”,则意味着在加速/制动/转弯时包括重量转移/前后或左/右,您需要一个三维模型的汽车它自己(因为会有力量和围绕三轴旋转),甚至如果它运行在平坦的2D表面上。 因此,使用三维模型可能是获得您所需要的唯一方法,并且您可以借用/窃取一些现有的代码(但将轮子简化为路面距离计算)。

如果你不需要,那么基于它的滑移角(即车轮相对于行驶方向的角度),每个车轮的基本牛顿+静态/dynamic摩擦模型就足够了。 在赛车驾驶有关这方面的书籍中有很多信息可以find。 (最大侧向力通常在3-6度的滑动,但这取决于光滑与螺纹和表面(柏油碎石,水泥,砾石等))

有几个GPL驱动物理引擎,可能适合你。 我无法find我正在寻找的那个,但是http://vdrift.net/似乎可能是一个好的开始。 我想即使是2D游戏也会使用3D物理引擎 – 即使只是通过缩放汽车来显示,你也可能想要跳跃等等。

Box2D是一个非常stream行的2D物理引擎。 它没有内置的赛车模型,但它似乎是一个坚实的通用物理引擎,所以你不必打扰基本的刚体力学,碰撞,摩擦或约束的细节。