サーチ…


完全なコード

import pygame

pygame.init()

WIDTH = 300
HEIGHT = 200
SCREEN = pygame.display.set_mode((WIDTH, HEIGHT))

pygame.display.set_caption('My Game')

WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
RED = (255, 0, 0)
GREEN = (0, 255, 0)
BLUE = (0, 0, 255)
YELLOW = (255, 255, 255)

SCREEN.fill(RED)
pygame.display.flip()

is_running = True
while is_running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            is_running = False

pygame.quit()

パイゲームのインポートと初期化

私たちはPythonでモジュールを扱うので、Pygameをインポートする必要があります:

import pygame

次に、インポートされたすべてのpygameモジュールを初期化します。

pygame.init()

これは、すべてのパイゲームモジュールを初期化するために使用されます。これがなければ、モジュールは動作しません

定数の定義

ここでいくつかの定数を定義します:

WIDTH = 300
HEIGHT = 200
SCREEN = pygame.display.set_mode((WIDTH, HEIGHT))

WIDTHおよびHEIGHT定数は、幅300ピクセル、高さ200ピクセルのウィンドウを作成するために使用されます。 SCREENpygame.display.set_mode((WIDTH, HEIGHT))で使用される関数は、ディスプレイのモードを設定し、 Surfaceオブジェクトを返します 。この関数のパラメータは、前に定義したWIDTH定数とHEIGHT定数であることに注意してください。

ウィンドウの名前を設定する

この関数を使用して、ウィンドウの名前をMy Gameに変更します。

pygame.display.set_caption('My Game')

色の定義

その後、ウィンドウで使用できる6色を定義します。

WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
RED = (255, 0, 0)
GREEN = (0, 255, 0)
BLUE = (0, 0, 255)
YELLOW = (255, 255, 255)

色を定義するとき、0から255までの3つの値を入れます。通常、 pygame.Colorクラスは次の形式で表示されます:

COLOUR = (r, g, b, a)

rパラメータが赤色の値を設定する場合、gパラメータは色の緑色の値を設定し、bパラメ​​ータは色の青色の値を設定します。 aパラメータは、色のアルファ値を設定します。

次に、このコマンドを実行します。

SCREEN.fill(RED)

これはpygame.Surface.fill関数で、サーフェスオブジェクト(画面)に赤色で塗りつぶします。

pygame.display.flip()を使用する

次に、この関数を使用します

pygame.display.flip()

これは、基本的には、私たちが描いたスクリーンの表面上のすべてを可視にして、ディスプレイ全体の内容を更新します。この行がなければ、ユーザーは自分のパイゲーム画面に何も表示されません。

ゲームループ

次の数行は「ゲームループ」と呼ばれるものです。

これを開始するには、変数を作成してTrueにします。

is_running = True

whileループを開始するには、次のようにします。

while is_running:

これはゲーム全体で実行されます。

それは最も基本的なフォームで、pygameにはボタン入力やマウスクリックなどのユーザー入力を受け取る「イベント」があります。 Pygameはイベントキューを通じてこれらのイベントを処理します。このforループを使用して、イベントキューからこれらのイベントを取得できます。

for event in pygame.event.get(): 

これは基本的にイベントのリスト、つまりイベントキューを通過します。これらは次の2行です:

if event.type == pygame.QUIT:
    is_running = False    

これにより、ユーザが上隅の終了ボタンを押すと、タイプpygame.QUITイベントが発生するようになります。

これで、 is_runningFalseなり、スクリプトが最後の行に移動するため、whileループが終了します。

pygame.quit()

Pygameモジュールを初期化しない。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow