PyGame:为什么碰撞不好?

时间:2018-06-08 20:30:35

标签: python pygame sprite collision-detection collision

它大多数时候都会检测到碰撞,但有时却没有。这是碰撞检查器:

# which clang
clang not found
# which clang-6.0
/usr/bin/clang-6.0

2 个答案:

答案 0 :(得分:0)

看起来像您的典型'子弹通过纸张' -problem。

由于.move()没有子步骤,你只是不与其他矩形重叠,因此不符合碰撞条件。

简单地说:你'擦除'原来的矩形,并在新的位置重新绘制它。对于另一个矩阵也一样。它们不重叠,因为运动太大,因此没有检测到碰撞。

答案 1 :(得分:-1)

如果您在同一个对象上多次调用collide_check(),我可能已找到问题的原因。

由于未知原因,.colliderect()如果在已检测到碰撞的对象上调用了碰撞,则不会检测到碰撞。

有关详细信息,请参阅此similar问题。