首頁 >後端開發 >Python教學 >Pygame開發遊戲實用指南---Pygame簡介

Pygame開發遊戲實用指南---Pygame簡介

王林
王林原創
2024-08-11 12:43:37610瀏覽

在本文中,我們將學習如何下載和安裝遊戲開發庫 Pygame,並且我們將運行一個簡單的範例專案來熟悉 Pygame。

專案代碼下載連結:https://github.com/la-vie-est-belle/pygame_codes


安裝 Pygame

在 Windows 上安裝 Pygame
開啟命令列視窗並鍵入命令 pip install pygame,然後按 Enter。如果最後看到成功安裝pygame的訊息,則表示Pygame已成功安裝。
The Practical Guide to Game Development with Pygame---Introduction to Pygame

注意:本教學使用的Pygame版本是2.6.0。

當然,我們還需要驗證Pygame是否正常運作。打開命令列窗口,輸入python,按下回車鍵,進入Python命令列介面。然後輸入 import pygame.如果出現Pygame歡迎訊息,則表示安裝成功,Pygame可以正常使用。
The Practical Guide to Game Development with Pygame---Introduction to Pygame

在 MacOS 上安裝 Pygame
同樣,打開終端,輸入 pip3 install pygame,然後按 Enter 鍵安裝 Pygame。驗證方法同上,這裡不再贅述。


運行 Pygame 範例項目

開啟命令列窗口,執行指令 python -m pygame.examples.aliens 即可啟動 Pygame 自帶的內建外星人遊戲。控制項如下:

  • 方向鍵移動玩家
  • 空白鍵射擊 The Practical Guide to Game Development with Pygame---Introduction to Pygame

The Practical Guide to Game Development with Pygame---Introduction to Pygame

在接下來的實作文章中,我們將一起開發和實現這款外星人遊戲。現在,讓我們來看看這個簡單的 Pygame 範例程式碼 1-1。

import sys
import pygame

pygame.init()                                       # 1
screen = pygame.display.set_mode((1100, 600))       # 2
pygame.display.set_caption('Dino Runner')           # 3

icon = pygame.image.load('icon.png')                # 4
pygame.display.set_icon(icon)

dino = pygame.image.load('dino_start.png')          # 5
dino_rect = dino.get_rect()
dino_rect.topleft = (80, 300)

while True:                                         # 6
    for event in pygame.event.get():                # 7
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()

    screen.fill((255, 255, 255))                    # 8
    screen.blit(dino, dino_rect)                    # 9
    pygame.display.flip()                           # 10

結果如下:
The Practical Guide to Game Development with Pygame---Introduction to Pygame

代碼說明:
#1 pygame.init() 初始化 Pygame 函式庫中的所有模組。在使用任何 Pygame 函數或類別之前必須包含此行。

#2 呼叫 pygame.display.set_mode() 函數設定遊戲視窗的大小(大小作為元組傳遞)。該函數傳回一個視窗對象,該對象儲存在變數 screen 中。該物件可讓您在視窗中繪製圖形、添加圖像和文字。 pygame.display模組專門用於視窗​​管理和螢幕顯示。

#3 使用 pygame.display.set_caption() 函數設定視窗標題。

#4 使用 pygame.image.load() 函數載入映像,在本例中為視窗圖示。該函數傳回一個影像對象,該對象儲存在 icon 變數中。接下來,使用 pygame.display.set_icon() 函數設定視窗圖示。

#5 載入主角圖像,並呼叫 get_rect() 取得角色圖像的矩形區域(一個 Rect 物件),並將該矩形的左上角 topleft 設為螢幕位置。

注意:螢幕座標原點在左上角,X軸向右延伸,Y軸向下延伸。 Pygame中的座標系將在後面的章節詳細講解。

#6 進入遊戲循環,Pygame 將持續偵測並處理使用者輸入、更新遊戲狀態或更新螢幕內容。

#7 使用 pygame.event.get() 取得事件佇列。在 for 迴圈中,我們讀取並處理每個事件。如果事件類型 event.type 為 pygame.QUIT (即關閉視窗),則呼叫 pygame.quit() 退出遊戲。 sys.exit() 終止目前Python程序,清理並退出執行Pygame程式的執行緒。

#8 呼叫視窗物件screen的fill()函數,為視窗填滿顏色。您傳遞一個表示顏色 RGB 值的元組,在本例中為白色。

#9 Call the blit() function of the window object screen to display the character image on the screen, with the position defined by the previously set rectangle dino_rect. You can also pass a coordinate tuple (x, y) to blit() to set the character's position on the screen, such as:

screen.blit(dino, (80, 300))

#10 Call the pygame.display.flip() function to refresh the screen content. You can also use pygame.display.update() to achieve the same effect. The latter can also accept a rectangle area to update only that portion of the screen. For example, the following line will update only a rectangle with the top-left corner at (0, 0) and a width and height of 350 pixels.

pygame.display.update((0, 0, 350, 350))

The Practical Guide to Game Development with Pygame---Introduction to Pygame


Summary

In this article, we learned how to install Pygame on Windows and MacOS, and explored a simple example code to understand the basic structure, operation principles, and some common functions of Pygame. If there are any parts that you do not fully understand, you can leave them for now. Later chapters may help clarify these concepts.

Buy author a cup of coffee if you enjoyed this tutorial. :)

  • The Practical Guide to Game Development with Pygame---Introduction to Pygame

  • The Practical Guide to Game Development with Pygame---Introduction to Pygame

  • The Practical Guide to Game Development with Pygame---Introduction to Pygame

以上是Pygame開發遊戲實用指南---Pygame簡介的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn