スプライトモジュールのGroupクラスを使用してスプライトの領域または部分を描画しようとしています。PygameでGroupクラスを使用してスプライトの領域または部分を描画する
だから私は私のスプライトを処理するために、このクラスを持っている:(。...はい、pygameのダウンロードがすでにインポートされた)
class Sprite(pygame.sprite.Sprite):
def __init__(self, player):
pygame.sprite.Sprite.__init__(self)
self.image = pygame.image.load(player)
self.image = pygame.transform.scale(self.image, (300, 75))
startPoint = (100, 500)
self.rect = self.image.get_rect()
self.rect.bottomleft = (startPoint)
その後、私が使用してスプライトをアップロード:
someFile = Sprite(join('res', 'file.png'))
spriteGroup = pygame.sprite.RenderUpdates(someFile)
最後に、私はそれを使用して描画しますspriteGroup.draw(source)
私の問題は、私は元のファイルの小さな部分または部分だけを描画したいということです年齢。さて、私は、Surface.blit()
を使って、描画するソースサーフェイスのより小さい部分を表すオプションの領域矩形を渡すことができることを知っています。それはパラメータのこの種を受け入れないよう
グループのサブクラスRenderUpdatesは、draw()
方法を持っている...また、Surface.blit()
は(私はそれを使用できたとしても)blit()
予期しているためのオプションではありません描画する座標ソース、しかし私はすでに上から私のクラスでこれらを定義しました。
... (0, 0, 75, 75)
などの引数を渡して、スプライトの最初のxとy、幅と高さをそれぞれ表すだけで、その部分だけを描画できますか?
あなたは天才です!私はset_clip()について読んでいましたが、スプライトで元のイメージを使用する方法がわかりませんでした。ご協力ありがとうございました! –