【问题标题】:Directional collision detection定向碰撞检测
【发布时间】:2012-07-06 19:06:18
【问题描述】:

如果我想每秒移动一个对象 40 像素并且我有以下情况,我怎样才能有效地检测到有碰撞?

假设两个对象都是 10 x 10 的正方形

2秒移动物体的起点:

40、100

3秒移动物体的终点:

80、100

60, 100 处的静止物体

如果我只移动移动对象一次(从 40 到 80 之间没有任何移动),我怎么知道它们之间有一个对象?

这显然是我所做工作的简化版本,但我希望它易于理解。

我唯一能想到的就是检查每个对象是否有一个 x 值小于 80 的一侧和另一个 x 值大于 40 的一侧以及与 y 值相同的想法...

如果有什么不同,我将使用 javascript 和 html5 画布。

【问题讨论】:

  • 你总是可以每 0.1 秒移动 4 像素。

标签: javascript html canvas collision-detection


【解决方案1】:

您可以尝试确定是否与移动对象的开始和结束位置定义的边界矩形发生冲突:

+-----------+--+
|     +==+  |  |
+-----:  :--+--+
      +==+

【讨论】:

    【解决方案2】:

    听起来你想要这样的东西,它已经写好了,可以处理各种形状:

    http://code.google.com/p/box2dweb/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-05
      • 2019-04-30
      • 1970-01-01
      相关资源
      最近更新 更多