跳转至内容

游戏开发指南/理论/碰撞检测/圆形

75% developed
来自维基教科书,开放世界开放书籍

圆形与圆形碰撞检测

[编辑 | 编辑源代码]

这是用来检测两个圆形是否发生碰撞的碰撞检测方法。此方法可直接应用于两个球体。

在此示例中,我们需要定义一些示例变量

- 原点作为 零位置向量

- 圆形1的中心作为 位置向量

- 圆形2的中心作为 位置向量

- 圆形1的半径,以小数表示。

- 圆形2的半径,以小数表示。

碰撞测试

[编辑 | 编辑源代码]
If  then:
    They are not colliding.
If  then:
    They are touching.
If  then:
    They are colliding.

如果您希望将“接触”视为“碰撞”,则使用以下方法

If  then:
    They are not colliding.
If  then:
    They are colliding.

圆形与点碰撞检测

[编辑 | 编辑源代码]

这基本上是上面方法的简化版本,因为您可以将点视为半径为零的圆形。

在此示例中,我们需要定义一些示例变量

- 原点作为 零位置向量

- 点的位置作为 位置向量

- 圆形1的中心作为 位置向量

- 圆形的半径,以小数表示。

碰撞测试

[编辑 | 编辑源代码]
If  then:
    They are not colliding.
If  then:
    They are touching.
If  then:
    They are colliding.

如果您希望将“接触”视为“碰撞”,则使用以下方法

If  then:
    They are not colliding.
If  then:
    They are colliding.


圆形与直线碰撞检测

[编辑 | 编辑源代码]

圆形与矩形碰撞检测

[编辑 | 编辑源代码]
[编辑 | 编辑源代码]

YouTube

涵盖“圆形与圆形”和“圆形与点”

参考资料

[编辑 | 编辑源代码]
华夏公益教科书