色を数値で表す
CoddyのPygameジャーニー「ゲームウィンドウで学ぶPython」セクションの一部。レッスン 3/32。
画面上の色は3つの数値で表されます。それぞれ0から255までの数値で、赤、緑、青の光をどれだけ混ぜるかを示します。これがRGBです。
(255, 0, 0)は赤、(0, 255, 0)は緑、(0, 0, 255)は青です。(0, 0, 0)は黒で、すべての光が消えています。(255, 255, 255)は白で、すべての光が最大です。(255, 255, 0)は黄色です。赤と緑の光を同時に使います。(20, 24, 48)は青みが強い、わずかな光です。夜空のような青です。
丸括弧で囲み、カンマで区切った数値はタプルを作ります。Pythonはそれらをまとめて順序どおりに保持するので、(48, 24, 20)は別の色、濃い茶色になります。
screen.fill(colour)はウィンドウ全体を1色で塗ります。各フレームで描画処理の最初に実行されるため、毎フレーム、ウィンドウがきれいな状態から始まります。
チャレンジ
簡単ウィンドウは黒です。代わりに夜空の青で塗りつぶしましょう。screen.fill((0, 0, 0))をscreen.fill((20, 24, 48))に変更してください。この後のすべてのプログラムは、夜空の青で始まります。
自分で試してみよう
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()
# ゲームループの前に、ここで準備をします。
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 各フレームで、ここで内容を更新します。
screen.fill((0, 0, 0))
# 画面を塗りつぶした後、ここで描画します。
pygame.display.flip()
clock.tick(60)
pygame.quit()
ゲームウィンドウで学ぶPythonのすべてのレッスン
自分で練習してみよう: Pygameプレイグラウンド