python實戰遊戲開發 開始遊戲專案

2021-08-09 00:09:18 字數 2915 閱讀 8237

1、建立pygame視窗以及響應使用者輸入

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

import sys

import pygame

def run_game():

#初始化遊戲並建立乙個螢幕物件

pygame.init()

screen=pygame.display.set_mode((1200,800))

pygame.display.set_caption("alien invasion")

#開始遊戲主迴圈

while true:

#監視鍵盤和滑鼠事件

for event in pygame.event.get():

if event.type==pygame.quit:

sys.exit()

#讓最近繪製的螢幕可見

pygame.display.flip()

run_game()

1)pygame.init()初始化背景設定,讓pygame能正常工作。

2)呼叫pygame.display.set_mode()來建立乙個名為screen的顯示視窗,實參(1200,800)是乙個元組,指定了遊戲視窗的尺寸,建立乙個寬1200畫素、高800畫素的遊戲視窗。

3)物件screen時乙個su***ce。在pygame中,su***ce是螢幕的一部分,用於顯示遊戲元素。在這個遊戲中,每個元素都是乙個su***ce。display.set_mode()返回的su***ce表示整個遊戲視窗。我們啟用遊戲的動畫迴圈後,每經過一次迴圈都自動重繪這個su***ce。

4)使用方法pygame.event.get()訪問pygame檢測到的事件。所有鍵盤和滑鼠事件都將促使for迴圈執行。在這個迴圈中,編寫一系列的if語句來檢測並響應特定的事件。

例如,玩家單擊遊戲視窗的關閉按鈕時,將檢測到pygame.quit事件,呼叫sys.exit()來退出遊戲。

5)方法pygame.display.filp()命令pygame讓最近繪製的螢幕可見。

在這裡,每次執行while迴圈時都繪製乙個空螢幕,並擦去舊螢幕,使得只有新螢幕可見。在我們移動遊戲元素時,pygame.display.filp()將不斷不斷更新螢幕,以顯示元素的新位置,並在原來的位置隱藏元素,從而營造平滑移動的效果。

2、設定背景色

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

import sys

import pygame

def run_game():

#初始化遊戲並建立乙個螢幕物件

pygame.init()

screen=pygame.display.set_mode((1200,800))

pygame.display.set_caption("alien invasion")

#設定遊戲背景色

bg_color=(230,230,230)

#開始遊戲主迴圈

while true:

#監視鍵盤和滑鼠事件

for event in pygame.event.get():

if event.type==pygame.quit:

sys.exit()

#每次迴圈時都會重繪螢幕

screen.fill(bg_color)

#讓最近繪製的螢幕可見

pygame.display.flip()

run_game()

1)顏色由紅色、綠色和藍色值組成,其中每個值得可能取值範圍都為0~255.顏色值(255,0,0)表示紅色,(0,255,0)表示綠色,而(0,0,255)表示藍色。當紅藍綠色量相同時為淺灰色。

2)方法screen.fill()用背景色填充螢幕;這種方法只接受實參:一種顏色。

3、建立設定類

#settings.py

class settings():

def __init__(self):

#螢幕設定

self.screen_width=1200

self.screen_height=800

self.bg_color=(230,230,230)

#alien_invasion.py

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

import sys

from settings import settings

import pygame

def run_game():

#初始化遊戲並建立乙個螢幕物件

pygame.init()

ai_settings=settings()

screen=pygame.display.set_mode((ai_settings.screen_width,ai_settings.screen_height))

pygame.display.set_caption("alien invasion")

#設定遊戲背景色

bg_color=(230,230,230)

#開始遊戲主迴圈

while true:

#監視鍵盤和滑鼠事件

for event in pygame.event.get():

if event.type==pygame.quit:

sys.exit()

#每次迴圈時都會重繪螢幕

screen.fill(ai_settings.bg_color)

#讓最近繪製的螢幕可見

pygame.display.flip()

run_game()

開始遊戲開發

開始遊戲開發 第 ii 部分 介紹 directx directx 首次出現在 1995 年,當時稱為 gamesdk 在其原始形式中,針對的目標是使用 c 和 c 的開發人員。只有在 2002 年 12 月該 api 的第乙個託管版本 9.0 發布以來,才可以使用 c 或 vb.net 開發 di...

《windowsPhone遊戲開發實戰》

2012年10月20號,我完成了這本書的初稿。2012年12月23號 世界末日 那天我收到了這本書的初稿。算起來這算是我寫的第二本,不過第一本是和別人合寫的,這次算是獨立寫的。寫書是為了對過去2年技術積累的乙個總結,寫完還是覺得有很多不足,個人積累得還不夠。本書每一章有完整的demo,在電子工業出版...

Python實戰 出拳遊戲

題目要求 與電腦進行 石頭剪刀布 的遊戲,電腦能自動出拳,我們能自由選擇出什麼。實現 import random 出拳 punches 石頭 剪刀 布 computer choice random.choice punches user choice user choice input 請出拳 石頭...