Up

Pygame入門

 

Pygameでは、描画は図1のイメージで行われる。

 

図1

 

スクリーンを用意して、そこに描いた図形を画面に表示するという形になっている。

リスト1のスクリプトを実行すると、図2の画像が描かれる。

 

図2

 

リスト1では、まず、次のコードでpygameの初期化を行っている。

 

pg.init() 

 

初期化後、次のコードによりスクリーンscreenが作成されている。

 

screen  = pg.display.set_mode((500, 500))

 

横・縦のサイズが500500のスクリーンである。座標は、左上が(0,0)、右上が(500,0)、左下が(0,500)、右下が(500,500)である。

次のコードにより、スクリーンの色が(255,255,255)に設定される。

 

screen.fill((255,255,255))

 

色はr,g,bで設定され、それぞれ赤、緑、青の光の強さを0〜255の整数値で表している。

次のコードは、スクリーンscreenに円を描くものである。

 

pg.draw.circle(screen, (0,255,0), (250,250), 200)

 

2番目の引数で色が設定されている。3番目の引数は、円の中心の位置を表し、半径が4番目の引数で与えられている。

スクリーンに描かれた画像は、次のコードで画面に表示される。

 

pg.display.flip()

 

画像が表示された後、プログラムがすぐに終了しないように、while文によるループを用意した。

 

ck = True

while ck:

    for e in pg.event.get():          #    イベントの取得

        if e.type == pg.KEYDOWN:      #    押されたキーがあるか

            if e.key == pg.K_ESCAPE:  #    押されたキーはESCキーか

                ck = False            #    ckFalseにして、while文を終了する

 

キーボードやマウスの操作は、イベントとして処理される。

イベントは次のコードで収集される。

 

pg.event.get()

 

イベントのタイプやキーについては、以下のサイトに説明されている。

 

https://www.pygame.org/docs/ref/event.html

 

https://www.pygame.org/docs/ref/key.html

 

 

リスト1では、ESCキーが押されるとckFalseに設定されて、while文の終了となる。

次のコード

 

pg.quit()

 

の実行で、pygameの終了である。

 

 

 

リスト1

 

import pygame as pg

 

pg.init()    #   pygameの初期化

 

screen  = pg.display.set_mode((500, 500))          #   描画スクリーンの設定

screen.fill((255,255,255))                         #   スクリーンの色(r,g,b

pg.draw.circle(screen, (0,255,0), (250,250), 200)  #   スクリーンに円を描画

pg.display.flip()                                  #   スクリーンの表示

 

"""

      ESCキーが押されるまで、while文によるループ内に留まる

"""

ck = True

while ck:

    for e in pg.event.get():          #    イベントの取得

        if e.type == pg.KEYDOWN:      #    押されたキーがあるか

            if e.key == pg.K_ESCAPE:  #    押されたキーはESCキーか

                ck = False            #    ckFalseにして、while文を終了する

 

pg.quit()     #   pygameの終了

 

 

 

 

Home