在 Pygame 中將視窗設定為全屏
Maxim Maeder
2023年1月30日
本教程將向你展示 Pygame 中任何遊戲的最簡單的開始。此外,你還將學習如何將視窗設定為全屏。
建立一個簡單的遊戲框架
下面的程式碼展示了一個簡單的遊戲框架。該示例將開啟一個視窗並保持執行,直到它關閉。
- 在前 3 行中,我們將匯入
pygame
和sys
模組,然後第二個庫將關閉程式。 - 我們繼續使用
pygame.init()
啟動 Pygame。 - 然後,我們將 fps 設定為 60;我們在下一行建立的
pygame.time.Clock
物件的update
方法中使用它。 - 此外,我們設定螢幕的寬度和高度。
- 我們將此資訊傳遞給
pygame.display.set_mode()
方法。
現在,我們轉到遊戲的主迴圈,大部分邏輯都發生在這裡。這是一個迴圈,因為遊戲在一秒鐘內要重繪許多次,在我們的例子中,是 60 次。
我們可以通過使用 pygame.quit()
和 sys.exit()
函式來打破無限迴圈。我們首先用黑色填充整個螢幕;然後,我們迴圈遍歷所有事件。
如果其中一個事件是 pygame.QUIT
事件,我們使用上述函式退出程式。單擊視窗右上角的紅色 x
時會觸發此事件。
在此之後,構成實際遊戲的所有程式碼都有空間,最後但並非最不重要的是,我們使用 pygame.display.flip()
更新螢幕。我們等待合適的時間過去,因此遊戲以每秒 60 幀的速度執行。
程式碼:
# Imports
import sys
import pygame
# Configuration
pygame.init()
fps = 60
fpsClock = pygame.time.Clock()
width, height = 640, 480
screen = pygame.display.set_mode((width, height))
# Game loop.
while True:
screen.fill((0, 0, 0))
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
# Main Loop Code belongs here
pygame.display.flip()
fpsClock.tick(fps)
在 Pygame 中將視窗設定為全屏
如果我們執行上面的例子,我們會看到一個小視窗,大小由 width
和 height
變數決定。如果我們想要一個遊戲是全屏的,我們傳遞 pygame.FULLSCREEN
標誌,然後你就有了一個全屏 Pygame 視窗。
程式碼:
screen = pygame.display.set_mode((width, height), pygame.FULLSCREEN)
作者: Maxim Maeder
Hi, my name is Maxim Maeder, I am a young programming enthusiast looking to have fun coding and teaching you some things about programming.
GitHub