最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python pygame 動畫游戲循環(huán)游戲時鐘實現(xiàn)原理

 更新時間:2022年08月15日 10:37:41   作者:ZacheryZHANG  
這篇文章主要為大家介紹了Python pygame 動畫游戲循環(huán)游戲時鐘實現(xiàn)原理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

1. 游戲循環(huán)和游戲時鐘

之前幾篇文章中,飛機大戰(zhàn)游戲中的英雄飛機已經被繪制到屏幕上了,怎么能夠讓飛機移動呢?

1.1 游戲中的動畫實現(xiàn)原理

電影的原理類似,游戲中的動畫效果,本質上是快速的在屏幕上繪制圖像

電影是將多張靜止的電影膠片連接、快速的播放,產生連貫的視覺效果!

一般在電影上每秒繪制60次,就能夠達到非常連續(xù)高品質的動畫效果(相當于要每秒鐘調用60次update效果)

每次繪制的結果被稱為幀F(xiàn)rame(靜止畫面)

2. 游戲循環(huán)

游戲的兩個組成部分:

  • 游戲的初始化:創(chuàng)建游戲窗口,繪制圖像初始位置,設置游戲時鐘
  • 游戲循環(huán):設置刷新幀率,檢測用戶交互,更新所有圖像位置,更新屏幕顯示

游戲循環(huán)的開始就意味著游戲的正式開始

游戲循環(huán)的作用:

  • 保證游戲不會直接退出
  • 變化圖像位置--動畫效果
    • 每隔1/60秒移動一下所有圖像位置
    • 調用pygame.display.update()更新屏幕顯示
  • 檢測用戶交互--按鍵、鼠標等

3. 游戲時鐘

pygame專門提供了一個類pygame.time.Clock可以非常方便的設置屏幕繪制速度--刷新幀率

要使用時鐘對象需要兩步驟:

在游戲初始化創(chuàng)建一個時鐘對象

在游戲循環(huán)中讓時鐘對象調用tick(幀率)方法

tick方法會根據上次被調用的時間,自動設置游戲循環(huán)中的延時

案例演示:本案例將在游戲循環(huán)外部創(chuàng)建時鐘對象,在游戲循環(huán)內部創(chuàng)建tick方法,就可以來指定循環(huán)內部的代碼執(zhí)行的頻率。

具體代碼演示如下所示:游戲循環(huán)內部的代碼,每秒重復循環(huán)60次就可以,就在游戲初始化的時候,創(chuàng)建游戲時鐘對象。

然后,在游戲循環(huán)中,通過時鐘對象調用tick的方法,就可以輕松的指定,游戲循環(huán)內部的代碼每秒鐘執(zhí)行的次數(shù)。

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)一調用update方法
pygame.display.update()
# 創(chuàng)建時鐘對象
clock = pygame.time.Clock()
# 游戲循環(huán)->意味著游戲的正式開始
i = 0
while True:
    # 希望無限循環(huán)內部的代碼每秒鐘重復循環(huán)60次
    # 可以指定循環(huán)體內部的代碼執(zhí)行的頻率
    clock.tick(60)
    print(i)
    i = i + 1
    pass
pygame.quit()

以上就是Python pygame 動畫游戲循環(huán)游戲時鐘實現(xiàn)原理的詳細內容,更多關于Python pygame 動畫的資料請關注腳本之家其它相關文章!

相關文章

最新評論

溧阳市| 商城县| 孝昌县| 建德市| 镇坪县| 仪陇县| 西和县| 行唐县| 西和县| 济宁市| 广饶县| 抚松县| 阳泉市| 衡东县| 绵竹市| 胶州市| 鄢陵县| 容城县| 威信县| 准格尔旗| 腾冲县| 万荣县| 宁阳县| 黎川县| 远安县| 阜新市| 曲松县| 沅江市| 蒙阴县| 社会| 浠水县| 南部县| 平昌县| 新津县| 平乐县| 库伦旗| 乌恰县| 巧家县| 榕江县| 连南| 定南县|