创建一个简单的2D物理引擎

时间:2011-11-25 17:31:43

标签: javascript html5 2d physics

我正在开发一个2D HTML5 Canvas JavaScript引擎,它现在有一个非常简单的物理组件,可以简单地遍历每个对象并且:

  1. 将加速度矢量添加到速度矢量
  2. 将速度矢量添加到位置矢量
  3. 检查对象之间的冲突,但除了调用对象的onCollide方法之外什么都不做(没有物理响应 - 对象只是相互通过)
  4. 到目前为止这种方法效果很好并且与帧速率无关,但我需要废弃支持以下内容:

    • 刚性身体相互作用(我认为这是正确的词),其中接触的物体相互施加阻力法向力
    • 可以旋转的盒子碰撞器 - 目前我只使用圆形碰撞器和Pythagorus来检测两个人在哪里接触

    引擎在动态FPS上工作,这意味着物理需要与帧速率无关。 我有点不愿意使用任何库但是如果我想要的只是愚蠢而没有一个,我愿意使用类似Box2DJS等。

    此外,我认为,当我使用JavaScript时,性能比准确性更重要。

    很抱歉,如果这是重复的,但我找不到创建简单物理引擎的任何内容,只使用库。

    干杯! :)

0 个答案:

没有答案