pygame開發遊戲的主要流程

2022-07-15 06:33:08 字數 1325 閱讀 7867

pygame開發遊戲的基礎是建立遊戲視窗,核心是處理事件、更新遊戲狀態和在螢幕上繪製圖形。遊戲狀態可以理解為程式中所有變數值的列表。在有些遊戲中,遊戲狀態包括存放人物健康個位置的變數、物體或圖形位置的變化,這些值可以在螢幕上表示。

物體或圖形位置的變化只有通過在螢幕上繪圖才可以看出來。

可以簡單的抽象出pygame開發遊戲的主要流程如下:

下面舉乙個具體例子來說明:

使用 pygame 開發乙個顯示 「hello world!」標題的視窗

import pygame

def hello_world():

pygame.init()

pygame.display.set_mode((400, 600))

pygame.display.set_caption("hello world!")

while true:

for event in pygame.event.get():

if event.type == pygame.quit:

pygame.quit()

exit()

pygame.display.update()

if __name__ == '__main__':

hello_world()

執行後僅見到黑色的遊戲視窗,標題是「hello world!」,如下所示:

在匯入pygame模組後,任何pygame遊戲程式均需要執行pygame.init()語句進行模組的初始化,它必須在進入遊戲的無限迴圈之前被呼叫。這個函式會自動初始化其他所有模組(例如 pygame.font 和 pygame.image),通過它載入驅動和硬體請求,這樣遊戲程式才可以使用計算機上的所有裝置,比較費時間。如果只使用少量的模組,應該分別初始化這些模組以節省時間,例如 pygame.sound.init() 僅僅初始化聲音模組。

該**中有個無限迴圈,每個 pygame 程式都需要它,在無限迴圈中可以做以下操作。

處理事件:例如滑鼠 、鍵盤 、關閉視窗等事件。

更新遊戲狀態:例如坦克的位置變化 、數量變化等。

在螢幕上繪圖:例如繪製新的敵方坦克等。

不斷重複上面3個步驟,從而完成遊戲邏輯。

在本例**中僅僅處理關閉視窗事件,也就是玩家關閉視窗時pyagme.quit()退出遊戲。

pygame遊戲開發參考指南

這篇部落格裡涉及pygame中的 顏色 常用形狀 文字 音效 動畫切換 精靈與精靈組以及碰撞檢測等簡單基礎知識,為我寫的另一篇部落格 python實現飛機大戰 提供參考。pygame進行初始化,呼叫pygame.init 方法 得到螢幕物件su ce 事件的監聽 遊戲主迴圈 處理遊戲事件,更新遊戲狀...

利用Pygame開發遊戲學習Python(入門)

為什麼學習python遊戲開發?以遊戲為突破口,學習python。1 anaconda 管理各種庫,如果其中找不到再利用pip安裝。自帶的jupyter notebook更是資料分析,簡單除錯的不二首道。2 pycharm 複雜專案 大型專案開發利器。3 sublime 看別人原始碼時用,支援n多格...

Python學習筆記 遊戲開發pygame入門

pygame用來開發遊戲軟體的 python 程式模組,基於 sdl 庫的基礎上開發 sdl directmedia layer 是一套開放源 的跨平台多 開發庫,使用c語言寫成。個人理解 安裝pygame 使用python3命令安裝報錯,可以嘗試使用python命令 python m pip in...