【pygame系列 第一课 创建游戏窗口 】
2019-12-10 本文已影响0人
叶子陪你玩
python我们可以做文字版的游戏,比如猜数字游戏,21点游戏。那python可以做图形界面的游戏吗?偷偷告诉你,用pygame库就可以实现了。pygame是python中专门用来编写游戏的一个引擎库,通过使用它,就可以很快的实现编写图形化的游戏。
比如下面这种:
下面就正式开始吧!
1.安装pygame
在终端去运行如下代码
pip install pygame
2.创建游戏窗口
import pygame
# 使用前先需要初始化,初始化所有被导入的pygame子模块,固定用法
pygame.init() # 初始化pygame
# 游戏肯定是在一个窗口中,那我们先来创建一个窗口
size = width, height = 640, 480 # 设置窗口大小
screen = pygame.display.set_mode(size) # 显示窗口
3.保持窗口显示
上面的窗口一闪就退出了,通过一个while循环一直保持,直到关闭窗口
import pygame
# 使用前先需要初始化,初始化所有被导入的pygame子模块,固定用法
pygame.init() # 初始化pygame
# 游戏肯定是在一个窗口中,那我们先来创建一个窗口
size = width, height = 640, 480 # 设置窗口大小
screen = pygame.display.set_mode(size) # 显示窗口
while True: # 死循环确保窗口一直显示
for event in pygame.event.get(): # 遍历所有事件
if event.type == pygame.QUIT: # 如果单击关闭窗口,则退出
sys.exit()
pygame.quit() # 退出pygame
4.显示有颜色的窗口
import pygame
# 使用前先需要初始化,初始化所有被导入的pygame子模块,固定用法
pygame.init() # 初始化pygame
# 游戏肯定是在一个窗口中,那我们先来创建一个窗口
size = width, height = 640, 480 # 设置窗口大小
screen = pygame.display.set_mode(size) # 显示窗口
red = (255,0,0) # 设置rgb值,这里是红色
while True: # 死循环确保窗口一直显示
for event in pygame.event.get(): # 遍历所有事件
if event.type == pygame.QUIT: # 如果单击关闭窗口,则退出
sys.exit()
screen.fill(red) #填充背景
pygame.display.flip() # 更新
pygame.quit() # 退出pygame
5.显示背景图片
import pygame
# 使用前先需要初始化,初始化所有被导入的pygame子模块,固定用法
pygame.init() # 初始化pygame
# 游戏肯定是在一个窗口中,那我们先来创建一个窗口
size = width, height = 800, 533 # 设置窗口大小
screen = pygame.display.set_mode(size) # 显示窗
background_img = pygame.image.load('backgrond.png')#设置背景图
red = (255,0,0) # 设置rgb值,这里是红色
while True: # 死循环确保窗口一直显示
for event in pygame.event.get(): # 遍历所有事件
if event.type == pygame.QUIT: # 如果单击关闭窗口,则退出
sys.exit()
screen.fill(red) #填充背景
screen.blit(background_img, [0, 0]) # 绘制沙滩
pygame.display.flip() # 更新
pygame.quit() # 退出pygame
6.在背景上面显示一个球
import pygame
# 使用前先需要初始化,初始化所有被导入的pygame子模块,固定用法
pygame.init() # 初始化pygame
# 游戏肯定是在一个窗口中,那我们先来创建一个窗口
size = width, height = 800, 533 # 设置窗口大小
screen = pygame.display.set_mode(size) # 显示窗
background_img = pygame.image.load('beach.png')#设置背景图
ball = pygame.image.load('intro_ball.gif')
red = (255,0,0) # 设置rgb值,这里是红色
while True: # 死循环确保窗口一直显示
for event in pygame.event.get(): # 遍历所有事件
if event.type == pygame.QUIT: # 如果单击关闭窗口,则退出
sys.exit()
screen.fill(red) #填充背景
screen.blit(background_img, [0, 0]) # 绘制沙滩
screen.blit(ball,[300,300]) # 绘制气球
pygame.display.flip() # 更新
pygame.quit() # 退出pygame
总结:
本文主要讲了如何创建显示一个游戏窗口。以及如何给游戏窗口设置背景颜色,背景图片等
pygame.init() :初始化pygame
pygame.display.set_mode(size) :设置窗口大小 size是个元组结构(width,height)
pygame.display.set_caption(title): 设置游戏窗口标题
pygame.event.get() :pygame中获取事件的方法,你退出的事件,按下鼠标,键盘等都会在这里面。
event.type :事件类型
screen.fill(color) :填充颜色 用的(r,g,b)格式
pygame.image.load('image.png'): 加载图片 括号中填写的是图片的路径
screen.blit(ball,[300,300]): 在screen上绘制的300,300处绘制球,窗口左上角是0,0;往下往右都是变大的。
pygame.display.flip() :不断更新游戏界面
欢迎转载,转载请注明出处!
欢迎关注公众微信号:叶子陪你玩
分享自己的python学习之路