4

私は pygame Sprite クラスを拡張するいくつかの異なるクラスを持っています。もともとは、外側の画像を使用して pygame Surface オブジェクトを作成し、その画像を画面に描画していました。私はこれらのスプライトの大きなグループを持っているので、それらを RenderClear グループに含めてから、簡単にするためにグループをクリアして描画します。pygame を使用して独自のグラフィックを描画することを決定するまで、これは機能していました。

外側の画像の代わりに、画像 Surface を作成し、その上に次のように円を描きます。

pygame.draw.circle(self.image, self.color,
                       (int(self.x), int(self.y)), self.radius, 0)

ただし、画面に描画すると円が表示されません。何も表示されず、ただの透明な表面です。

また、同じパラメータを使用して円を画面に直接描画することもテストしましたが、これは機能しますが、スプライトの画像を描画しても何もありません。何か案は?

4

1 に答える 1

1

クラス内でupdateメソッドを作成してから、メソッド内のウィンドウサーフェスに円などを描画する必要があります。次に、RenderClearグループを描画するたびに、RenderClear.update()を呼び出すと、必要な他のすべてが描画されます。

于 2012-12-06T15:14:47.763 に答える