溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么用Python創(chuàng)建視頻游戲

發(fā)布時間:2021-10-20 10:06:08 來源:億速云 閱讀:156 作者:iii 欄目:編程語言

本篇內(nèi)容主要講解“怎么用Python創(chuàng)建視頻游戲”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“怎么用Python創(chuàng)建視頻游戲”吧!

一分鐘上手 Python

Python 是一種用途廣泛的編程語言,這意味著它(與大多數(shù)語言一樣)提供了函數(shù)來對數(shù)字和字符做處理的“簡單技巧”。Linux 操作系統(tǒng)用戶已經(jīng)安裝了 Python。 Mac 操作系統(tǒng)用戶使用的是較舊版本的 Python,但是你可以從 Python.org 網(wǎng)站 安裝最新版本。Windows 操作系統(tǒng)用戶可以從這篇 在 Windows 上安裝 Python 的文章中學(xué)習(xí)如何安裝 Python。

安裝完成后,你可以啟動交互式 Python Shell 進行算術(shù)運算:

$ python3>>> 5+611>>> 11/25.5>>> 11//25>>> 11%21

從該示例可以了解,需要一些特殊的符號,但學(xué)過數(shù)學(xué)的人都最熟悉不過了。也許你不喜歡數(shù)字,而更喜歡字母:

$ python3>>> string = "hello world">>> print(string)hello world>>> print(string.upper())HELLO WORLD>>> print(string[0])h>>> print(string[1])e>>> print(string[2])l>>> print(string[3])l>>> print(string[4])o

同樣,相對地說基礎(chǔ)的任務(wù)有特殊的符號表示法,但是即使沒有說明,你也可能已經(jīng)發(fā)現(xiàn) [0] 和 [1] 符號表示法是將數(shù)據(jù)“切片”并且利用 print 函數(shù)將其中的數(shù)據(jù)顯示在屏幕上。

五分鐘用上 Pygame

如果你只想使用 Python 來創(chuàng)建一個視頻游戲或任何超越基本計算的項目,這可能需要投入大量的學(xué)習(xí)、努力和時間。幸運的是,Python 誕生已有二十年了,開發(fā)者已經(jīng)開發(fā)了代碼庫來幫助你(相對)輕松地完成典型的程序壯舉。Pygame 是一套用于創(chuàng)建視頻游戲的代碼模塊。它 不是唯一的這種類庫,但是它是最古老的(不論好壞),因此在線上有很多文檔和示例。

首先學(xué)習(xí) 推薦的 Python 虛擬環(huán)境工作流程:

$ python3 -m venv mycode/venv$ cd mycode$ source ./venv/bin/activate(venv)$

進入虛擬環(huán)境后,可以安全地將 Pygame 安裝到項目文件夾中:

(venv)$ echo "pygame" >> requirements.txt(venv)$ python -m pip install -r requirements.txt[...] Installing collected packages: pygameSuccessfully installed pygame-x.y.z

現(xiàn)在你已經(jīng)安裝了 Pygame,就可以創(chuàng)建一個簡單的演示應(yīng)用程序。它比你想象的要容易。Python  可以進行所謂的面向?qū)ο缶幊蹋∣OP),這是一個漂亮的計算機科學(xué)術(shù)語,用于描述當(dāng)代碼結(jié)構(gòu)化時,就像你在使用代碼創(chuàng)建物理對象一樣。然而,程序員并沒有受到迷惑。他們知道在編寫代碼時并不是真的在制造物理對象,但是這樣有助于想象,因為這樣你就可以了解編程世界的局限性。

例如,如果你被困在一個荒島上并想要一杯咖啡,那么你就必須收集一些黏土,做一個杯子,然后烘烤它。如果你足夠聰明,先創(chuàng)建一個模具,以便每當(dāng)需要另一個杯子時,都可以從模板中快速創(chuàng)建一個新杯子。即使每個杯子都來自相同的模板,它們在物理上也是獨立的:如果一個杯子破裂,你還會有另一個杯子。你可以通過添加顏色或蝕刻使每個咖啡杯顯得獨一無二。

在 Pygame 和許多編程任務(wù)中,你都會使用類似的邏輯。在定義之前,它不會出現(xiàn)在你的編程項目中。下面是如何在 Python 和 Pygame 程序中讓咖啡杯出現(xiàn)。

使用 Pygame 進行面向?qū)ο缶幊?/h5>

創(chuàng)建一個名為 main.py 的文件,并輸入以下代碼用以啟動 Pygame 模塊,并使用 Pygame 模板創(chuàng)建一個窗口:

import pygame pygame.init() screen = pygame.display.set_mode((960,720))

就像你可能在現(xiàn)實生活中使用模板來創(chuàng)建對象一樣,你也可以使用 Pygame 提供的模板來創(chuàng)建一個妖精sprite(這是 Pygame 的視覺游戲?qū)ο笮g(shù)語)。在面向?qū)ο蟮木幊讨校?code>class 表示對象的模板。在你的文檔中輸入以下代碼:

class Cup(pygame.sprite.Sprite):    def __init__(self):        pygame.sprite.Sprite.__init__(self)         # image        img = pygame.image.load('coffeecup.png').convert()        self.image = img         # volume        self.rect = self.image.get_rect()        self.rect.x = 10        self.rect.y = 10

該代碼塊使用 Pygame 的 sprite 模板設(shè)計一個咖啡杯子妖精。由于 self.image 的存在,你的咖啡杯妖精有一個圖像,而 self.rect 則賦予了它體積(寬度和高度)。這些是 Pygame 期望妖精擁有的屬性,但是如果你要創(chuàng)建一個可玩的視頻游戲,則可以為其指定任何其他所需的屬性,例如健康點和得分。

到目前為止,你所要做的就是創(chuàng)建一個窗口和一個用于咖啡杯的 模板 。你的游戲?qū)嶋H上還沒有一個杯子。

你的代碼的最后一部分必須使用模板來生成杯子并將其添加到游戲世界中。如你所知,計算機運行速度非常快,因此從技術(shù)上講,你到目前為止創(chuàng)建的代碼只會運行一毫秒左右。編寫圖形計算機應(yīng)用程序時,無論計算機是否認(rèn)為已完成規(guī)定的任務(wù),都必須強制其保持打開狀態(tài)。程序員使用 無限循環(huán) 來執(zhí)行此操作,該循環(huán)在 Python 中由 while True 語句表示(True 始終為真,因此循環(huán)永遠(yuǎn)不會結(jié)束)。

無限循環(huán)可以確保你的應(yīng)用程序保持打開狀態(tài)足夠長的時間,以使計算機用戶可以查看和使用該應(yīng)用程序:

cup = Cup() while True:    pygame.display.update()    screen.blit(cup.image, cup.rect)

此代碼示例從模板 Cup 創(chuàng)建杯子,然后使用 Pygame 函數(shù)更新顯示。最后,使用 Pygame 的 blit 函數(shù)在其邊框內(nèi)繪制杯子的圖像。

獲取圖形

在成功運行代碼之前,你需要為咖啡杯準(zhǔn)備一個圖形。你可以在 FreeSVG.org 上找到許多 公用創(chuàng)作 咖啡杯圖形。我用了 這個。將圖形保存在項目目錄中,并將其命名為 coffeecup.png。

運行游戲

啟動應(yīng)用程序:

(venv)$ python ./main.py

怎么用Python創(chuàng)建視頻游戲

到此,相信大家對“怎么用Python創(chuàng)建視頻游戲”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI