1

虽然我知道 draw 函数的目的是绘制到某个表面,但我不明白为什么它不简单地返回一个 pygame.Surface 对象,您可以稍后在需要时将其 blit 到表面。到目前为止,当我只想创建一个表面并稍后将其绘制到其他东西上时,这非常不方便。

有什么方法可以让您获得类似的函数来返回表面对象,而不是执行额外的步骤并直接绘制到另一个表面?

4

1 回答 1

1

要制作具有您想要的形状的表面,而不是绘制到原始表面,您绘制到另一个表面,然后您可以将其粘贴到原始表面。

至于为什么绘制函数返回一个矩形,它可以通过只更新需要更新的屏幕部分来优化您的代码。你这样做的方式是每次你想在屏幕上画一些东西时,你将它返回的矩形附加到一个列表中,当你去更新屏幕时,你这样做:

pygame.display.update(rect_list)
于 2013-04-01T17:42:10.847 回答