欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python?pygame繪制游戲圖像

 更新時間:2022年08月11日 08:29:15   作者:ZacheryZHANG  
這篇文章主要介紹了Python?pygame繪制游戲圖像,文章圍繞主題展開pygame模塊完成飛機大戰(zhàn)游戲的實戰(zhàn)開發(fā)的案例詳情,需要的朋友可以參考一下

前言

本節(jié),我們將使用pygame模塊完成飛機大戰(zhàn)游戲的實戰(zhàn)開發(fā),飛機大戰(zhàn)游戲的簡要概括如下:

  • 把一些靜止的圖像繪制到游戲窗口
  • 根據用戶的交互或其他情況,移動這些圖像,產生動畫效果
  • 根據圖像之間是否發(fā)生重疊,判斷敵機是否被摧毀等其他情況

1. 理解圖像并實現(xiàn)圖像繪制

  • 在游戲中,能夠看到的游戲元素大多都是圖像,圖像文件初始是保存在磁盤上的,如果需要使用,第一步就需要被加載到內存。
  • 要在屏幕上看到一個圖像的內容,需要按照三個步驟:
    • 使用pygame.image.load()加載圖像的數據
    • 使用游戲屏幕對象,調用blit方法將圖像繪制到指定位置(blit方法接收兩個參數,第一個參數為圖像地址,第二個參數為圖像在屏幕中繪制的位置)
    • 調用pygame.display.update()方法更新整個屏幕的顯示

提示:要想在屏幕上看到繪制的結果,就一定要調用pygame.display.update()方法

2. 代碼演練-繪制背景圖像

需求:

  • 加載background.png創(chuàng)建背景
  • 將背景繪制在屏幕的(0,0)位置
  • 調用屏幕更新顯示背景圖像

具體代碼演示如下所示:注意使用update方法更新背景圖像,否則可能導致不顯示圖像。

import pygame
pygame.init()

# 創(chuàng)建游戲的窗口 640*642
screen = pygame.display.set_mode((640, 642))

# 繪制背景圖像
# 1> 加載圖像數據
bg = pygame.image.load("./background.jpg")
# 2> blit繪制圖像
screen.blit(bg, (0, 0))
# 3> update更新屏幕顯示
pygame.display.update()
while True:
    pass

pygame.quit()

代碼運行結果如下圖所示:

3. 代碼演練-繪制英雄圖像

需求:

  • 加載mel.png創(chuàng)建英雄飛機
  • 將英雄飛機繪制在屏幕的(200,500)位置
  • 調用屏幕更新顯示飛機圖像

繪制英雄飛機具體代碼演示如下所示:

import pygame
pygame.init()

# 創(chuàng)建游戲的窗口 640*642
screen = pygame.display.set_mode((640, 642))

# 繪制背景圖像
# 1> 加載圖像數據
bg = pygame.image.load("./background.jpg")
# 2> blit繪制圖像
screen.blit(bg, (0, 0))
# 3> update更新屏幕顯示
pygame.display.update()

# 繪制英雄的飛機
hero = pygame.image.load("./飛機大戰(zhàn)資料包/images/me1.png")
screen.blit(hero, (300, 500))
pygame.display.update()

while True:
    pass

pygame.quit()

注意:./飛機大戰(zhàn)資料包/images/me1.png路徑下的me1.png圖像為透明圖像

  • png格式的圖像是支持透明的
  • 在繪制圖像時,透明區(qū)域不會顯示任何內容
  • 但是如果下方已經有內容,會通過透明區(qū)域顯示出來

代碼運行結果如下圖所示:在原本背景圖的代碼基礎上,有更新了繪制英雄飛機的相關代碼,因此,在背景圖中顯示了小飛機。

到此這篇關于Python pygame繪制游戲圖像的文章就介紹到這了,更多相關Python繪制游戲圖像內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 對Python Class之間函數的調用關系詳解

    對Python Class之間函數的調用關系詳解

    今天小編就為大家分享一篇對Python Class之間函數的調用關系詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • 自定義Django_rest_framework_jwt登陸錯誤返回的解決

    自定義Django_rest_framework_jwt登陸錯誤返回的解決

    這篇文章主要介紹了自定義Django_rest_framework_jwt登陸錯誤返回的解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-10-10
  • PyQt5 文本輸入框自動補全QLineEdit的實現(xiàn)示例

    PyQt5 文本輸入框自動補全QLineEdit的實現(xiàn)示例

    這篇文章主要介紹了PyQt5 文本輸入框自動補全QLineEdit的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-05-05
  • python opencv圖像處理(素描、懷舊、光照、流年、濾鏡 原理及實現(xiàn))

    python opencv圖像處理(素描、懷舊、光照、流年、濾鏡 原理及實現(xiàn))

    這篇文章主要介紹了python 基于opencv對圖像進行各種處理,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-12-12
  • python openpyxl打開文件關閉問題

    python openpyxl打開文件關閉問題

    這篇文章主要介紹了python openpyxl打開文件關閉問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • pip install python 快速安裝模塊的教程圖解

    pip install python 快速安裝模塊的教程圖解

    這篇文章主要介紹了pip install python 如何快速安裝模塊,本文圖文并茂給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-10-10
  • appium測試之APP元素定位及基本工具介紹

    appium測試之APP元素定位及基本工具介紹

    看了我文章了相信都了解了web端的元素定位了,沒看的,既然進來了那么肯定多多少少知道些,本文主要來介紹APP的元素定位有哪些定位方式,我們又怎么去連接APP,然后通過工具去獲取元素
    2021-09-09
  • Python中函數的返回值示例淺析

    Python中函數的返回值示例淺析

    這篇文章主要給大家介紹了關于Python中函數返回值的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Python具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-08-08
  • 用Python實現(xiàn)網易云音樂的數據進行數據清洗和可視化分析

    用Python實現(xiàn)網易云音樂的數據進行數據清洗和可視化分析

    這篇文章主要為大家詳細介紹了Python實現(xiàn)Kmeans聚類算法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • python使用tkinter打造三維繪圖系統(tǒng)的示例代碼

    python使用tkinter打造三維繪圖系統(tǒng)的示例代碼

    Python?的?tkinter?模塊是一個常用的?GUI(圖形用戶界面)工具包,它能夠讓你創(chuàng)建窗口應用程序,你可以使用它來構建用戶友好的界面,包括按鈕、標簽、文本框、列表框等各種控件,本文講給大家介紹如何使用tkinter打造三維繪圖系統(tǒng),需要的朋友可以參考下
    2023-08-08

最新評論