この記事では、Pygameを用いてスプライトをグループ管理する方法とソースコードを解説します。
スプライトグループ(高速)
スプライトグループを使うと複数のスプライトを効率よく管理できます。(スプライトの更新・描画が楽)
また、スプライトの描画を高速に行うために汚れたRectのアニメーション(dirty rect animation)という手法があります。 この手法は、画面を更新するときに、全体を描き換えずにスプライトが更新された一部分だを描き換えます。
今回はPygameで汚れたRectのアニメーションを行ってみました。
– | 処理手順 |
---|---|
① | 「pygame」モジュールをインポートする。 |
② | 画面のサイズを設定する。 |
③ | 円の中心座標を画面の中心に設定する。 |
④ | Pygameを初期化する。[pygame.init] |
⑤ | キャラクター3人分のスプライトを作成する。(この時同時にグループに追加される) |
⑥ | 3つのスプライトをグループに追加する。(group.add) |
⑦ | 画面のフレームレートを設定する。 |
⑧ | スプライトを背景画像で消去する。 |
⑨ | スプライトグループを更新する。(group.update) |
⑩ | スプライトグループを描画する。(group.draw) |
⑪ | 変化がある箇所のRectを取得する。 |
⑫ | 画面を更新する。(変化がある部分のみ) |
⑬ | 3人のキャラクターを指定した座標(x, y)に描画する。 |
⑭ | イベント処理をする。画面の閉じるボタンが押されたら終了する。 |
⑮ | 7-15の処理を繰り返す。 |
3人のキャラクターがあっちこっち動きます。
– | 関連記事 |
---|---|
1 | 【Pygame入門】ゲームプログラミング |
2 | 【Python入門】サンプル集・使い方 |
コメント