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

Python?pygame項目實戰(zhàn)英雄動畫特效實現(xiàn)

 更新時間:2022年08月12日 11:47:41   作者:ZacheryZHANG  
這篇文章主要為大家介紹了Python?pygame項目實戰(zhàn)英雄動畫特效實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

1. 英雄的簡單動畫實現(xiàn)

需求:

  • 在游戲初始化定義一個pygame.Rect的變量記錄英雄的初始位置
  • 在游戲循環(huán)中每次讓英雄的y-1--向上移動(y值減1相當(dāng)于向屏幕上方上移動1)
  • y<=0將英雄移動到屏幕的底部

友情提示:

  • 每一次調(diào)用update()方法之前,需要把所有的游戲圖像都重新繪制一遍
  • 而且應(yīng)該最先重新繪制背景圖像

2. 代碼演示

案例大體思路概括:

  • 在游戲循環(huán)上方,定義rect記錄飛機的初始位置
  • 在游戲循環(huán)內(nèi)部,修改飛機位置:讓飛機的y屬性-1
  • 調(diào)用blit方法繪制圖像(注意:繪制圖像的時候,每一次循環(huán)都要先繪制背景圖在繪制飛機,這樣背景圖就會把上一次繪制的飛機遮擋住,所以就不會在屏幕上留下上一次飛機的剪影)
  • 調(diào)用update方法更新顯示,就能看到連貫的動畫效果了

具體代碼演示如下所示:

import pygame
pygame.init()
# 創(chuàng)建游戲的窗口 640*642
screen = pygame.display.set_mode((640, 642))
# 繪制背景圖像
bg = pygame.image.load("./飛機大戰(zhàn)資料包/images/background1.jpg")
screen.blit(bg, (0, 0))
# 繪制英雄的飛機
hero = pygame.image.load("./飛機大戰(zhàn)資料包/images/me1.png")
screen.blit(hero, (300, 500))
# 可以在所有繪制工作完成之后,統(tǒng)一調(diào)用update方法
pygame.display.update()
# 創(chuàng)建時鐘對象
clock = pygame.time.Clock()
# 游戲循環(huán)->意味著游戲的正式開始
# 1. 定義rect記錄飛機的初始位置
hero_rect = pygame.Rect(300, 500, 102, 126)
# 游戲循環(huán)->意味著游戲的正式開始
while True:
    # 希望無限循環(huán)內(nèi)部的代碼每秒鐘重復(fù)循環(huán)60次
    # 可以指定循環(huán)體內(nèi)部的代碼執(zhí)行的頻率
    clock.tick(60)
    # 2. 修改飛機的位置
    hero_rect.y -= 1
    # 3. 調(diào)用blit方法繪制圖像
    # 先繪制背景,在繪制飛機,就不會留下殘影(背景把上一次的飛機遮擋)
    screen.blit(bg, (0, 0))
    screen.blit(hero, hero_rect)
    # 4. 調(diào)用update方法更新顯示
    pygame.display.update()
pygame.quit()

代碼運行結(jié)果如下圖所示:運行結(jié)果為動畫效果,大體概括如下:在屏幕上方可以看到,英雄飛機不斷向上移動,每次移動距離1,慢慢移動到屏幕上方,最終移出屏幕。

以上就是Python pygame項目實戰(zhàn)英雄動畫特效實現(xiàn)的詳細內(nèi)容,更多關(guān)于Python pygame英雄動畫的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python列表返回重復(fù)數(shù)據(jù)的下標(biāo)

    python列表返回重復(fù)數(shù)據(jù)的下標(biāo)

    這篇文章主要介紹了python列表返回重復(fù)數(shù)據(jù)的下標(biāo),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-02-02
  • 基于Python制作打地鼠小游戲

    基于Python制作打地鼠小游戲

    這篇文章主要為大家介紹了如何利用Python實現(xiàn)打地鼠小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Python基于socket實現(xiàn)TCP/IP客戶和服務(wù)器通信

    Python基于socket實現(xiàn)TCP/IP客戶和服務(wù)器通信

    本主要介紹了Python socket網(wǎng)絡(luò)編程TCP/IP服務(wù)器與客戶端通信的相關(guān)資料,這里對Scoket 進行詳解并創(chuàng)建TCP服務(wù)器及TCP 客戶端實例代碼,需要的朋友可以參考下
    2021-06-06
  • Python獲取當(dāng)前腳本文件夾(Script)的絕對路徑方法代碼

    Python獲取當(dāng)前腳本文件夾(Script)的絕對路徑方法代碼

    在本篇文章中小編給各位整理了關(guān)于Python獲取當(dāng)前腳本文件夾(Script)的絕對路徑實例代碼內(nèi)容,有需要的朋友們學(xué)習(xí)下。
    2019-08-08
  • 詳解Python中的分組函數(shù)groupby和itertools)

    詳解Python中的分組函數(shù)groupby和itertools)

    這篇文章主要介紹了Python中的分組函數(shù)groupby和itertools)的實例代碼,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧
    2018-07-07
  • opencv-python 提取sift特征并匹配的實例

    opencv-python 提取sift特征并匹配的實例

    今天小編就為大家分享一篇opencv-python 提取sift特征并匹配的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • 詳解詳解Python中writelines()方法的使用

    詳解詳解Python中writelines()方法的使用

    這篇文章主要介紹了詳解詳解Python中writelines()方法的使用,是Python入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-05-05
  • python計算Content-MD5并獲取文件的Content-MD5值方式

    python計算Content-MD5并獲取文件的Content-MD5值方式

    這篇文章主要介紹了python計算Content-MD5并獲取文件的Content-MD5值方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • django 模型中的計算字段實例

    django 模型中的計算字段實例

    這篇文章主要介紹了django 模型中的計算字段實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • numpy.bincount用于復(fù)數(shù)權(quán)重的方法

    numpy.bincount用于復(fù)數(shù)權(quán)重的方法

    numpy.bincount是NumPy庫中的一個函數(shù),它用于計算整數(shù)數(shù)組中每個值的出現(xiàn)次數(shù),numpy.bincount函數(shù)在統(tǒng)計整數(shù)數(shù)組中每個值的出現(xiàn)次數(shù)或權(quán)重和時非常有用,本文給大家介紹numpy.bincount如何用于復(fù)數(shù)權(quán)重,感興趣的朋友跟隨小編一起看看吧
    2023-11-11

最新評論