【发布时间】:2021-09-06 13:10:10
【问题描述】:
我的问题很简单,我只想知道一种制作静态主体的方法,它是一个使用 pymunk 的矩形。我尝试阅读文档并发现了有关 Segments 的信息,但无法真正理解它。因此,非常感谢任何形式的帮助!
【问题讨论】:
标签: python pygame game-physics physics pymunk
我的问题很简单,我只想知道一种制作静态主体的方法,它是一个使用 pymunk 的矩形。我尝试阅读文档并发现了有关 Segments 的信息,但无法真正理解它。因此,非常感谢任何形式的帮助!
【问题讨论】:
标签: python pygame game-physics physics pymunk
您可以使用已连接到空间的静态实体,也可以制作一个新实体。要创建一个矩形,可以将角提供给 Poly 构造函数(如下所示),或者使用简写的 Poly.create_box 方法。
space = pymunk.Space()
rectangle = pymunk.Poly(space.static_body, [(10,10),(20,10),(20,15),(10,15)])
space.add(rectangle)
请注意,静态物体在添加到空间后不应移动。所以如果需要移动矩形,可以使用运动体来代替。
【讨论】:
viblo 的方法很有效。还有这个
def create_rectangle_static(space,pos_x,pos_y,width,height):
body = pymunk.Body(body_type=pymunk.Body.STATIC)
body.position = (pos_x,pos_y)
shape = pymunk.Poly.create_box(body,(width,height))
space.add(body,shape)
【讨论】: