1、利用pygame绘制图形窗口

1.1游戏的初始化和退出

使用pygame提供的所有功能之前,需要调用init方法

游戏结束前也需要调用 quit 方法

方法说明
pygame.init()导入并初始化所有pygame模块
pygame.quit()卸载所有pygame模块
1.2游戏中的坐标系

在游戏中,所有可见的元素都是以矩形区域来描述位置的;

pygame.Rect是用于描述矩形区域的

Rect(x, y, width, height)

pygame.Rect比较特殊,内部只是封装了一些数字计算

不执行pygame.init() 方法也同样能够直接调用

1.3创建游戏主窗口

display模块用于创建、管理游戏窗口;

pygame.display.set_mode():初始化游戏显示窗口

pygame.display.update():刷新屏幕内容显示,稍后使用

set_mode方法

set_mode(resolution(0, 0), flags=0, depth=0)

参数说明
resolution
指定屏幕的宽和高,默认创建的窗口大小和屏幕大小一致

flags指定屏幕的附加选项,例如是否需要默认全屏,默认不需要传递
depth
表示颜色的位数,默认自动分配
import pygame # 导入模块 pygame.init() # 游戏初始化 screen =
pygame.display.set_mode((480, 700)) # 创建游戏窗口 while True: # 暂时停止关闭窗口 pass #
pygame.quit(),退出游戏
1.4绘制背景图像
import pygame # 游戏初始化 pygame.init() # 创建游戏窗口 screen =
pygame.display.set_mode((480, 700)) # 绘制背景图像 bg =
pygame.image.load("./images/background.png") # 1)加载图像数据 screen.blit(bg, (0, 0))
# 2)blit绘制图像,后面的坐标代表背景图像在游戏窗口中的位置 pygame.display.update() # 3)update更新屏幕显示
while True: pygame.event.get() # 暂停中止 pygame.quit()

1.5绘制英雄

扩展:

透明图像

png格式的图像是支持透明的;

当透明区域下方有其他内容时,下方的内容会显示出来;

update()方法的作用

* 在screen对象完成所有方法bulit方法后,统一调用一次display.update方法;
* 由display.set_mode方法创建的screen对象是一个内存中的屏幕数据对象;
* display.update()会将最终结果绘制在屏幕上,这样可以提高屏幕绘制效率,增加游戏的流畅度;

技术
今日推荐
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:766591547
关注微信