pygame简介
官方链接:https://www.pygame.org/news
Pygame是跨平台Python模块,专为电子游戏设计,包含图像、声音。建立在SDL基础上,允许实时电子游戏研发而无需被低级语言(如机器语言和汇编语言)束缚,是一个高可移植性的模块可以支持多个操作系统。用它来开发小游戏非常适合。
一、pygame的安装
我们默认你已经安装pycharm,且配置好基于python3.x的开发环境(如果还未配置,请参考我之前的教程)。打开pycharm的Terminal,输入
pip install pygame
这是最简单,最不易出错的一种方式,且不用区分操作系统的区别。安装完成后我们使用下面的方式检查一下是否安装成功。
打开pycharm的PythonConsole,然后输入
improt pygame
安装成功便会如下图一般显示pygame的版本号。
二、pygame的最小系统----pygame版Hello,World!
我们先来快速的体验一下pygame,编写一个pygame的最小系统。使用pycharm新建py文件,并输入下面的代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import pygame
# -----------------------------------对象定义---------------------------------
# ------------------------------加载基本的窗口和时钟----------------------------
# 使用pygame之前必须初始化
pygame.init()
# 设置标题
pygame.display.set_caption("Hello,World!")
# 设置用于显示的窗口,单位为像素
screen_width, screen_height = 800, 400
screen = pygame.display.set_mode((screen_width, screen_height))
clock = pygame.time.Clock() # 设置时钟
# -------------------------------- 加载对象 ----------------------------------
# ------------------------------- 游戏主循环 ---------------------------------
run = True
while run:
clock.tick(60)
# ------------------------ 事件检测及状态更新 ------------------------------
for event in pygame.event.get(): # 循环获取事件
if event.type == pygame.QUIT: # 若检测到事件类型为退出,则退出系统
run = False
# -------------------------- 窗口更新并绘制 -------------------------------
pygame.display.update() # 更新屏幕内容
pygame.quit()
运行结果如下图:
是的, 你刚刚创建了世界上最无趣的视屏游戏。 它只是一个空白的窗口, 在窗口的顶部显示了一个"Hello World"。后续的教程中我们将根据一些小的游戏demo来深入学习pygame。
三、pygame的运行流程
使用pygame开发游戏,创建游戏窗口是基础,游戏的主循环(事件的获取、状态的检测、图像更新后的绘制)是核心。游戏事件可以理解为用户的所有输入,游戏获取后作出相应的回应。 游戏状态可以理解为游戏中某个对象在某一时刻的状态,如英雄的位置,动作等等。当所有对象按照时间进行更新后,绘制出当前时间帧的图像。物体或图形位置的变化只有通过在屏幕上绘图才可以看出来。
用流程表示可以参考下图:
ps:如果觉得文章对您有所帮助,欢迎点赞收藏转发,感谢呦!