用Python和Pygame寫遊戲 入門

2021-07-31 02:47:10 字數 2318 閱讀 4655

windows7 下安裝pygame:

安裝好,可以用下面的方法確認有沒有安裝成功:

import pygame

print pygame.ver

2.新的hello world

# -*- coding:utf-8 -*-

# 背景

# 游標

mouse_image_filename = 'fugu.png'

import pygame

# 向sys模組借乙個exit函式用來退出程式

from sys import exit

from pygame.locals import *

# 初始化pygame,為使用硬體做準備

pygame.init()

# 建立了乙個視窗

screen = pygame.display.set_mode((640, 480), 0, 32)

# 設定視窗標題

pygame.display.set_caption("hello, world!")

# 設定背景

background = pygame.image.load(background_image_filename).convert()

# 設定滑鼠圖示

mouse_cursor = pygame.image.load(mouse_image_filename).convert_alpha()

# 遊戲主迴圈

while true:

for event in pygame.event.get():

# 接收到退出事件後退出程式

if event.type == quit:

exit()

# 將背景圖畫上去

screen.blit(background, (0, 0))

# 獲得滑鼠位置

x, y = pygame.mouse.get_pos()

# 計算游標的左上角位置

x -= mouse_cursor.get_width() / 2

y -= mouse_cursor.get_height() / 2

# 把游標畫上去

screen.blit(mouse_cursor, (x, y))

# 重新整理一下畫面

pygame.display.update()

注:if event.type == quit: 這裡會報錯,不用理。

set_mode會返回乙個su***ce物件,代表了在桌面上出現的那個視窗,三個引數第乙個為元祖,代表分 辨率(必須);第二個是乙個標誌位,具體意思見下表,如果不用什麼特性,就指定0;第三個為色深。

標誌位功能

fullscreen

建立乙個全屏視窗

doublebuf

建立乙個「雙緩衝」視窗,建議在hwsu***ce或者opengl時使用

hwsu***ce

建立乙個硬體加速的視窗,必須和fullscreen同時使用

opengl

建立乙個opengl渲染的視窗

resizable

建立乙個可以改變大小的視窗

noframe

建立乙個沒有邊框的視窗

convert 函式是將影象資料都轉化為su***ce物件,每次載入完影象以後就應該做這件事件(事實上因為 它太常用了,如果你不寫pygame也會幫你做);

convert_alpha相比conv

ert,保留了alpha 通道資訊(可以簡單理解為透明的部分),這樣我們的游標才可以是不規則的形狀。

遊戲的主迴圈是乙個無限迴圈,直到使用者跳出。在這個主迴圈裡做的事情就是不停地畫背景和更新游標位置,雖然背景是不動的,我們還是需要每次都畫它, 否則滑鼠覆蓋過的位置就不能恢復正常了。

blit是個重要函式,第乙個引數為乙個su***ce物件,第二個為左上角位置。畫完以後一定記得用update更新一下,否則畫面一片漆黑。

用Python和Pygame寫遊戲 「貪吃蛇」

coding utf 8 import pygame,sys,random from pygame.locals import 定義顏色變數 redcolour pygame.color 255,0,0 blackcolour pygame.color 0,0,0 whitecolour pygam...

初學Python和pygame寫小遊戲

alien.py 外星人的類,負責外星人的載入 位置 繪製和更新等屬性。alien invasion.py 主函式。bullet.py 對子彈進行管理的類,負責子彈的繪製 更新。button.py 按鈕類,繪製play按鈕。game function.py 包含實現各種操作所需的函式。game da...

Python學習模組 Pygame寫遊戲

第乙個例項程式 建立 main game.py 一張背景 001.jpg 一張跟隨滑鼠!初始化pygame,為使用硬體做準備 pygame.init 建立乙個視窗 screen pygame.display.set mode 640,480 0,32 設定視窗標題 pygame.display.se...