Pygame开发游戏实用指南---Pygame简介

在本文中,我们将学习如何下载和安装游戏开发库 pygame,并且我们将运行一个简单的示例项目来熟悉 pygame。

项目代码下载链接:https://github.com/la-vie-est-belle/pygame_codes


安装 pygame

在 windows 上安装 pygame
打开命令行窗口并键入命令 pip install pygame,然后按 enter。如果最后看到成功安装pygame的信息,就说明pygame已经成功安装了。

注意:本教程使用的pygame版本是2.6.0.

当然,我们还需要验证pygame是否正常工作。打开命令行窗口,输入python,按回车键,进入python命令行界面。然后输入 import pygame.如果出现pygame欢迎信息,则表示安装成功,pygame可以正常使用。

在 macos 上安装 pygame
同样,打开终端,输入 pip3 install pygame,然后按 enter 键安装 pygame。验证方法同上,这里不再赘述。


运行 pygame 示例项目

打开命令行窗口,运行命令 python -m pygame.examples.aliens 即可启动 pygame 自带的内置外星人游戏。控制方式如下:

  • 方向键移动玩家
  • 空格键射击

在接下来的实践文章中,我们将一起开发并实现这款外星人游戏。现在,让我们看一下这个简单的 pygame 示例代码 1-1.

import sys
import pygame

pygame.init()                                       # 1
screen = pygame.display.set_mode((1100, 600))       # 2
pygame.display.set_caption('dino runner')           # 3

icon = pygame.image.load('icon.png')                # 4
pygame.display.set_icon(icon)

dino = pygame.image.load('dino_start.png')          # 5
dino_rect = dino.get_rect()
dino_rect.topleft = (80, 300)

while true:                                         # 6
    for event in pygame.event.get():                # 7
        if event.type == pygame.quit:
            pygame.quit()
            sys.exit()

    screen.fill((255, 255, 255))                    # 8
    screen.blit(dino, dino_rect)                    # 9
    pygame.display.flip()                           # 10

结果如下:

代码说明:
#1 pygame.init() 初始化 pygame 库中的所有模块。在使用任何 pygame 函数或类之前必须包含此行。

#2 调用 pygame.display.set_mode() 函数设置游戏窗口的大小(大小以元组形式传递)。该函数返回一个窗口对象,该对象存储在变量 screen 中。该对象允许您在窗口中绘制图形、添加图像和文本。 pygame.display模块专门用于窗口管理和屏幕显示。

#3 使用 pygame.display.set_caption() 函数设置窗口标题。

#4 使用 pygame.image.load() 函数加载图像,在本例中为窗口图标。该函数返回一个图像对象,该对象存储在 icon 变量中。接下来,使用 pygame.display.set_icon() 函数设置窗口图标。

#5 加载主角图片,并调用 get_rect() 获取角色图片的矩形区域(一个 rect 对象),并将该矩形的左上角 topleft 设置为屏幕位置。

注意:屏幕坐标原点在左上角,x轴向右延伸,y轴向下延伸。 pygame中的坐标系将在后面的章节中详细讲解。

#6 进入游戏循环,pygame 将不断检测和处理用户输入、更新游戏状态或更新屏幕内容。

#7 使用 pygame.event.get() 获取事件队列。在 for 循环中,我们读取并处理每个事件。如果事件类型 event.type 为 pygame.quit (即关闭窗口),则调用 pygame.quit() 退出游戏。 sys.exit() 终止当前python程序,清理并退出运行pygame程序的线程。

#8 调用窗口对象screen的fill()函数,给窗口填充一种颜色。您传递一个表示颜色 rgb 值的元组,在本例中为白色。

#9 调用窗口对象screen的blit()函数,将字符图像显示在屏幕上,位置由之前设置的矩形dino_rect定义。还可以向 blit() 传递一个坐标元组 (x, y) 来设置角色在屏幕上的位置,如:

screen.blit(dino, (80, 300))

#10 调用 pygame.display.flip() 函数刷新屏幕内容。您还可以使用 pygame.display.update() 来达到相同的效果。后者还可以接受矩形区域来仅更新屏幕的该部分。例如,以下行将仅更新左上角位于 (0, 0) 且宽度和高度为 350 像素的矩形。

pygame.display.update((0, 0, 350, 350))


概括

在本文中,我们学习了如何在 windows 和 macos 上安装 pygame,并探索了一个简单的示例代码来了解 pygame 的基本结构、运行原理以及一些常用功能。如果还有不完全理解的部分,可以暂时先不说。后面的章节可能有助于阐明这些概念。

如果您喜欢本教程,请给作者喝杯咖啡。 🙂

以上就是Pygame开发游戏实用指南---Pygame简介的详细内容,更多请关注昆居客【www.kunjuke.com】。

相关推荐:

自由之刃新手入门指南

自由之刃新手玩法攻略,《自由之刃》是一款大型多人在线角色扮演游戏。单职业的满攻速你玩得多,但是你一定没有玩过三职业满攻速。多种职业任你选择,上线攻速直接拉满!轻松打出高额的伤害,享受一刀一个满屏红字的暴击伤害! 自由之刃新手入门指南: 一、游戏入门 1、怪物通缉是亲爹建好角色别犹豫,主线任务一路干到底。等主线暂时没了,掉头就去打怪物通缉。 这玩意儿好处太多了——打着打着就能捡到装备,还能拿到经验卷...

三角洲行动QBZ95配枪指南

三角洲行动QBZ95怎么配枪,随着季中更新的到来,QBZ95在本赛季也迎来史诗级架枪。今天我们就来聊一聊这把枪的改装思路。希望能够帮助到大家,QBZ95在射程方面也拥有者很好的优势,配件拉满之后第一段优势射程可以来到50米的距离,这在步枪当中是十分难得。 三角洲行动QBZ95配枪指南: 一、配枪代码: QBZ95-1突击步枪-全面战场-6K52M20064DU5TFLJ691H 二、QBZ95介绍...

从前有条街寰海争涛玩法指南

「寰海争涛」海港争夺战即将全面打响,在此玩法中,街主将与商盟伙伴一起战斗,在寰海十洲中乘风破浪,向海域核心进攻,一举夺下王城,成为寰海的霸主!快来详读「寰海争涛」玩法指南,了解玩法的流程与规则吧。 从前有条街寰海争涛玩法指南: 玩法开启时间: 每个海纪开启第四天后解锁玩法; 前往寰海十洲,点击寰海争涛图标进入玩法界面; 周四报名,周五争夺,争夺时间段持续2小时。 一、报名阶段 1.报名流程 (1)...

雪松萌新入门指南

雪松新手必备知识,up池子周期短,一星期轮换一次,一个是职业轮换池子,一个是阵营轮换池子,俩池子独立计算,想抽谁别着急,慢慢来。(本池子轮换会继承本池子60抽必出5星保底计数,但150兑换不知道能否一直无限累计。 雪松萌新入门指南: 一、这游戏大体上分为两个玩法 ①PVE ②PVP 二、围绕两个玩法,配队不同玩法不同 ①PVE: 可以手动操作,玩法较多,根据选择载具不同,玩法不同,一种是能坐人载具...

三国五虎将新手入门指南

三国五虎将新手怎么玩,完成新手引导后,通常会获得多次抽卡机会。关注初始的“保底”高级武将,一个好的开局核心(如输出爆炸的关羽、赵云,或能扛能打的张飞)能让前期推图事半功倍。 三国五虎将新手入门指南: 一、 初入三国:核心玩法快懂 英雄收集与羁绊: 游戏的核心是收集超过百位三国名将(名萌将)。每个武将都有独特的技能和定位(如攻击、防御、辅助)。特别注意武将之间的“羁绊”关系,如上阵刘备、关羽、张飞三...

望月新手入门指南

望月新手怎么玩,下文为新手玩家们梳理了从战斗到养成的核心玩法,希望能帮新手玩家们快速上手。下面这个表格汇总了游戏的主要玩法要点,你可以快速了解全貌。 望月新手入门指南: 一、游戏的主要玩法 二、战斗与技能技巧 想要在战斗中取胜,需要熟练掌握技能机制和操作技巧。 核心技能机制: 游戏中的技能往往有联动效果。例如,“弦月·蹦蹦兔” 在目标血量低于50%时伤害会提升并附带吸血;而 “月相·轮回” 可以刷...

Hermes Agent自动化办公指南

Hermes Agent通过五种方法实现高效自动化办公:一、一键生成结构化报表;二、定时触发多源数据同步与告警;三、跨平台消息网关直推处理结果;四、OCR识别非结构化单据并注入分析流水线;五、多Agent协作执行复杂工作流。 ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜ 如果您需要提升日常办公效率,但重复性任务仍需大量手动操作,则可能是由于...
· AI · 98463

小度app如何查看设备列表_小度app查看列表教程【指南】

小度APP中查看设备需分三路径:首页顶部仅显示当前直连的1台设备;“我的”页面可查看全部已绑定设备及在线状态;“全部设备”入口支持小度与第三方设备统一管理。 想快速确认自己绑定了几台小度设备、哪些还在在线、哪些已离线,又找不到统一查看入口?小度APP的设备列表就藏在首页和“我的”两个核心页面里,不同入口展示维度略有差异,必须按路径精准进入才能看到完整信息。 首页顶部直接查看当前连接设备 这一步操作...