一个2d游戏开发工具包
安装 pip install pygame
参考目录:https://www.pygame.org/docs/
import sys, pygame 引入相关包
pygame.init() 初始化
screen = pygame.display.set_mode(size) 得到窗口surface对象
游戏主循环
while 1:
处理游戏的事件
更新游戏状态
在屏幕上绘制
游戏中的图片
图片的加载
bg=pygmae.image.load('bg.png')
在屏幕上绘制
screen.blit(bg,bg.get_rect())
pygame.display.flip() 更新
游戏中的颜色
使用RGB表示 取值范围0-255
red=pygame.Color(255,0,0)
RGBA表示透明色
游戏中的形状
线 pygame.draw.line(screen,RED,(1,1),(50,50),6)
矩形 pygame.draw.rect(screen,RED,(10,10,50,50),6)
圆 pygame.draw.circle(screen,RED,(100,100),50,6)
游戏中的文字
加载文字
font=pygame.font.SysFont(''宋体,32,是否加粗,是否斜体) #font.get_fonts() 得到系统已装的字体
可在项目中保存TTF字体文件
font=pygame.font.Font('./simhei.ttf',40)
得到surface对象
text=font.render('得分:0',True,Red,Blue)
在屏幕上绘制
screen.blit(text,text.get_rect())
游戏中的音效
加载背景音乐 pygame.mixer.music.load('/musc.mp3')
无限循环播放 pygame.mixer.music.play(-1)
设置音量 pygame.mixer.music.set_volume(0.2)
动画切换
帧速率 用FPS或者帧/秒来度量
通过 pygame.time.Clock()中的tick(num)控制
screen.fill(pygame.color())绘制屏幕颜色背景
精灵以及精灵组
可以认为是一个个小图片,一种可以在屏幕上移动的图形对象,并且可以与其他图形对象交互。精灵图像可以是使用pygame绘制的图像,也可以是原来就有的图像文件。
精灵组是一个容器,用于管理组内精灵的绘制和更新。
碰撞的检查
两个精灵之间的矩形检测
pygame.sprite.collide_rect(s1,s2)
pygame..sprite.collide_rect_ratio(0.5)(s1,s2) 链式调用
圆形检测 collide_circle()
像素遮罩检测 collide_mask()
精灵与精灵组之间的碰撞检测 spritecollideany(sp,spg,bool)