Python系列文章目录
第二十四章 Pygame游戏开发基础(上)
Python系列文章目录
前言
什么是Pygame
Pygame 安装
命令行窗口下载
pycharm 环境下安装下载
Pygame 框架中的模块
开发第一个 Pygame 程序
前言
大家好, 我是了不起, 欢迎收看我的冒险之旅
今天我们将学习Pygame, 并利用其开发一个简单的Pygame程序.
今日冒险片段上
随着冒险不断地深入的, 众人已经到达了灾难的根源——使徒罗斯特. 它隐匿在第二脊椎, 用其强大的精神能力控制着岛上的信徒们. 使徒这个称呼是在gbk内流传的古籍中所记录的, 而了不起从奥菲利亚哪里了解到: 使徒并非只有一位, 并且这些使徒与这个世界的起源都有着千丝万缕的联系.
众人遇到了罗斯特, 被供奉在神殿中, 大批信徒源源不断的为其提供水源. 如果某个人的生活的维持是以牺牲许多人的利益为代价. 那么, 它的存在就是不合理的. 于是众人开始向罗斯特发起攻击. 但令人震惊的是, 无论是精灵王的虚影, 还是了不起刚学习到的技能, 都难以击败他. 更何况这里还是在陆地, 如果让它回归海洋, 恐怕他将是最难缠的对手. 众人在苦苦支撑, 可是局面渐渐地像罗斯特那边倾斜...
什么是Pygame
Pygame 是一组用于编写游戏的 Python 模块. 它具有高度的可移植性,几乎可以在所有平台和操作系统上运行. Pygame 在优秀的 SDL 库之上添加了功能. 这使我们可以使用 python 语言创建功能齐全的游戏和多媒体程序. 官网入口
Pygame 安装
Pygame安装方式大致分为三种:
在命令行利用 pip install 进行安装
通过pycharm 来进行安装
在python官网来下载对应模块
下面主要介绍前两种
命令行窗口下载
Windows+R 输入 cmd, 在命令行中输入如下命令:
pip install pygame
也可以通过pycharm 进入终端命令行. 然后输入相对应软件进行下载安装时可以指定版本
pip install pygame ==版本号
但需要注意, 锁安装的模块版本要和自己当前安装的Python版本进行匹配, 否则可能会下载失败! 因此建议尽量不要指定版本.
pycharm 环境下安装下载
进入 FIle->setting->project 项目名 -> Python Interpreter-> 输入对应的拓展模块然后下载即可 无需选择版本, 因为pycharm 会为你选择合适的匹配你python 的版本
Pygame 框架中的模块
在 Pygame 框架中有很多模块,其中最常用模块的具体 说明下表所示
模块名 | 功能说明 |
---|---|
pygame.display | 访问显示设备 |
pygame.draw | 绘制形状、线和点 |
pygame.event | 管理事件 |
pygame.font | 使用字体 |
pygame.image | 加载和存储图片 |
pygame.key | 读取键盘按键 |
pygame.mixer | 声音 |
pygame.mouse | 鼠标 |
pygame.movie | 播放视频 |
pygame.music | 播放音频 |
pygame.overlay | 访问高级视频叠加 |
pygame.rect | 管理矩形区域 |
pygame.sndarray | 操作声音数据 |
pygame.sprite | 操作移动图像 |
pygame.surface | 管理图像和屏幕 |
开发第一个 Pygame 程序
步骤
:
初始化-> 生成主屏幕 -> 设置标题 -> 刷新屏幕
实操代码
import pygame
# 初始化
pygame.init()
# 生成主屏幕(「双缓冲」窗口)
"""
set_mode 函数:会返回一个 Surface 对象,代表了在桌面上出现的那个窗口
在 3 个参数中,第 1 个参数为元组,表示屏幕的大小;
第 2 个标志位,具体含义如表 1-2 所示,如果不用什么特性,就指定 0;
第 3 个为色深
"""
pygame.display.set_mode((600, 500), pygame.DOUBLEBUF, 32)
# 设置标题
pygame.display.set_caption("开发第一个pygame程序")
whileTrue:
# 刷新屏幕
pygame.display.update()
注意:
set_mode 函数:会返回一个 Surface 对象,代表了在桌面上出现的那个窗口 在 3 个参数中,第 1 个参数为元组,表示屏幕的大小;第 2 个标志位,具体含义如表 1-2 所示, 如果不用什么特性,就指定 0;第 3 个为色深. 各标志位具体含义如下所示:
标志位 | 含义 |
---|---|
FULLSCREEN | 创建一个全屏窗口 |
DOUBLEBUF | 创建一个「双缓冲」窗口,建议和 |
HWSURFACE 和 OPENGL | 同时使用 NOFRAME 创建一个没有边框的窗口 |
RESIZEBLE | 创建一个可以改变大小的窗口 |
OPENGL | 创建一个 OPENGL 渲染的窗口 |
HWSURFACE | 创建一个硬件加速的窗口,必须和 FULLSCREEN 同时使用 |
游戏的主循环是一个无限循环,直到用户退出。在这个主循环里面做的事情就是 第 5 页 不停的刷新新画面。
效果展示
今日冒险片段下
就在千钧一发之际, GSC请来的援兵到了, 曾经斩击败过使徒希洛克的四大剑圣: 巴恩, 阿甘左, 西岚, 布万加. 以及教会的圣职者等人. 在这些人的加入下, 特别是四大剑圣, 凭借其之前和使徒战斗经验, 逐渐压制了罗斯特. 在圣骑士的强力支援下, 最终打败了罗斯特. 了不起也顺利晋升到了lv25.
此时, 在另一个充满时空漩涡和时空乱流的空间内, 有两个人, 一个在脸上有着泪痕的精灵模样的女人站着, 一个拿着琵琶的且双目无神的女人半跪着. 只见站着的女人露出了阴森的微笑, 仿佛能够通过遥远空间看到第二脊椎所发生的事情一样. 然后他们二人同时消失, 只留下空间中回荡着的那句话: 命运的齿轮已经开始转动, 预言的未来已势不可挡...
Sora最近老火了,Sora 的出现会对短视频、广告、游戏、影视行业等产业格局一定会被重塑,目前 Sora 还没正式开放注册,大家看到的使用体验大部分都来自官网,或者少部分的用户分享。
为了避免更多读者受骗,我们直接给大家整了一个免费的。
注意是下面【 Python都知道 】公众号,不是本公众号,点击下方的公众号卡片,然后回复【 sora 】 ,即可获取最新 Sora 的最全资料。
目前已经分享了,如何申请 Sora 的内测,以及最新关于 Sora 的技术特点,使用教程、变现机遇等等。
大家如果想领取这份资料,可以点击下方的公众号卡片,然后回复 【 sora 】 ,即可获取最新 Sora 的最全资料。
需要提醒大家的是,Sora 目前还没有完全开放,任何市面上付费的一些课程,都请大家谨慎选择。
可以确定的是:未来 10-20年,一定是 AI 的大风口、大时代,如果错过了公众号、错过了抖音、错过了小红书。
请一定不要错过 AI +。
面对浪潮,恐惧只会让我们伫立在原地,被巨浪吞噬。
要去主动适应它,不被恐惧束缚,动起胳膊动起脚,才不会被淘汰。
注意是下面【 Python都知道 】公众号,不是本公众号,点击下方的公众号卡片,然后回复 【 sora 】 ,即可获取最新 Sora 的最全资料。