0

我正在使用 Ruby,当然还有与 Chipmunk 以及Chingu / Gosu游戏库的 Ruby 绑定。似乎语法不同,但我认为它与 Chipmunk C 相同。我该如何做地板?我尝试了以下方法:

space = CP::Space.new
space.damping = 0.9
space.gravity = CP::Vec2.new(0, 50)
body = CP::StaticBody.new
shape_array = [CP::Vec2.new(0, 400), CP::Vec2.new($window.width, 400), CP::Vec2.new($window.width, 390), CP::Vec2.new(0, 390)]
shape = CP::Shape::Poly.new(body, shape_array, CP::Vec2.new(0,0))
shape.collision_type = :floor
space.add_body(body)
space.add_shape(shape)

发生的情况是物体撞到地板上并在瞬间摆动,然后直接穿过。我希望它们降落在地板上,甚至可以弹起一点(取决于物体)。但不要穿过地板。我该怎么做呢?

4

1 回答 1

1

为了使这项工作,我不得不删除该行:

space.add_body(body)

静态物体不能添加到空间中。

于 2012-10-15T19:13:51.327 回答