最近因为孩子在学习使用Pygame做游戏编程,遇到问题咨询我,不得不对Pygame 做一个初步的了解使用。
官网有详细的入门介绍:https://www.pygame.org/wiki/GettingStarted
pygame 已经放弃了对 python 2 的支持,首先得安装Python 3 版本。
pip install pygame
pip 相关操作
在windows系统中通过快捷键【win+R】打开运行窗口,输入“cmd”进入命令行窗口,在命令行窗口中输入以下命令来更新pip即可。
python -m pip install --upgrade pip
pip show pip #查看pip的版本
pip list #查看已安装的模块
pip install 模块名 #使用pip安装指定模块
import pygame
from pygame.locals import *
这里的第一行是唯一必要的。它将所有可用的 pygame 模块导入到 pygame 包中。第二行是可选的,将一组有限的常量和函数放入脚本的全局命名空间中。
初始语句: pygame.init()
它必须在任何其他 pygame 函数之前添加,否则可能会出现初始化错误
退出:初始化的模块通常也有一个 quit() 函数来清理。不需要显式调用这些,因为 pygame 将在 python 完成时干净地退出所有初始化的模块。
游戏循环是所有游戏事件发生、更新并被绘制到屏幕上的地方。一旦变量的初始设置和初始化完成,游戏循环就开始了,程序不断循环,直到发生 QUIT 类型的事件。
while True:
# Code
… …
pygame.display.update()
display.update()在调用之前,不会实施游戏中的更改。由于游戏是不断变化的数值,所以更新函数在游戏循环中,不断更新。
每个游戏循环都必须有一个终点,或者触发终点的某些动作(例如单击退出按钮),否则您的游戏将无限期地运行。
while True:
pygame.display.update()
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
我们分别调用pygame.quit()和sys.exit()来关闭 pygame 窗口和 python 脚本。简单地使用sys.exit()可能会导致您的 IDE 由于错误而挂起。如果您没有pygame.locals像我们一样导入所有内容,则必须pygame.locals.QUIT使用QUIT.
完整代码框架如下:
import pygame
from pygame.localsimport *
import sys
pygame.init()
pygame.display.set_mode((800, 600))
while True:
pygame.display.update()
for eventin pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()