Pygame 基础教程01: Python (Pygame) 游戏开发模块简介与安装

您所在的位置:网站首页 用Python游戏开发可以吗 Pygame 基础教程01: Python (Pygame) 游戏开发模块简介与安装

Pygame 基础教程01: Python (Pygame) 游戏开发模块简介与安装

2024-02-15 23:24| 来源: 网络整理| 查看: 265

原文链接:https://xiets.blog.csdn.net/article/details/131382248

版权声明:原创文章禁止转载

专栏目录:Pygame 专栏(总目录)

Pygame 相关网站:

Pygame 官方网站:https://www.pygame.org/Pygame 官网文档:https://www.pygame.org/docs/Pygame GitHub:https://github.com/pygame/pygame 1. Pygame 简介

Pygame 是一个免费的开源的跨平台库(支持 Windows、MacOS、Linux),用于使用 Python 开发视频游戏等多媒体应用程序。它使用 SDL(Simple DirectMedia Layer)库 和 其他几个流行的库 一起来抽象出最常见功能的 Python API,使编写这些程序变的简单直观。

Pygame 是 Python 的第三方模块,学习 Pygame 必须要有一定的 Python 语言基础。

Pygame 是一个强大的游戏开发库,提供了广泛的功能来简化您的编码之旅。

Pygame 为 2D 图形和动画提供了简单而有效的工具,包括对图像、矩形和多边形形状的支持。

Pygame 还包括对播放音效和背景音乐的支持,支持 WAV、MP3 和 OGG 音频格式,使您可以轻松地为游戏添加音效和背景音乐。

Pygame 提供了处理键盘、鼠标和操纵杆输入的直观功能,使您可以快速轻松地在游戏中实现玩家控制。无需再为复杂的输入代码苦苦挣扎,Pygame 让它变得简单。

总之,Pygame 提供了一整套专为游戏开发而设计的工具和功能。从碰撞检测到精灵管理,Pygame 拥有各类游戏开发所需的一切。无论您是在构建平台游戏、益智游戏还是介于两者之间的任何游戏,Pygame 都能满足您的需求。

Pygame 的 Logo:

pygame_logo.png

2. Pygame 安装

安装 Pygame 模块:

python -m pip install pygame

升级 Pygame 模块:

python -m pip install --upgrade pygame

Python 安装后,启动解释器的命令,Windows 一般是 python,MacOS 和 Linux 一般是 python3。

pygame 安装后,在 .../site-packages/pygame/examples 目录下有许多开发案例。

3. 第一个 Pygame 程序

第一个 Pygame 程序:

import pygame # 导入 pygame 包 def main(): # 程序主函数 pygame.init() # 初始化 pygame (必须最先调用) pygame.display.set_caption("Hello Pygame") # 设置系统窗口标题 screen = pygame.display.set_mode((400, 300)) # 设置游戏窗口大小, 返回一张与游戏窗口屏幕关联的图像对象 while True: # 游戏主循环 (每循环一次绘制一帧) for event in pygame.event.get(): # 获取并移除当前事件队列中的所有事件, 然后遍历每一个事件 if event.type == pygame.QUIT: # 判断是否有退出程序事件 (关闭游戏窗口时会发送 QUIT 事件) pygame.quit() # 退出 pygame, 然后返回主函数 return screen.fill("#CCCCCC") # 把 set_mode() 返回的图像填充为灰色 pygame.display.update() # 把 set_mode() 返回的图像中的内容绘制到屏幕上 if __name__ == "__main__": main() # 当前模块被直接运行时调用主函数

运行代码,屏幕上将出现一个窗口:

pygame_demo.png

为什么要把程序封装在一个 main() 函数中,最后再通过 if __name__ == "__main__" 判断去调用?请参考:Python 脚本文件中的 main() 函数 与 if __name__ == “__main__”。

4. pygame 顶级模块

pygame 是 Pygame 的顶级模块,其他子模块的一些属性和类型大多数也导出到了 pygame 模块中。

pygame 模块中的函数:

pygame.init() -> (numpass, numfail) # 初始化所有导入的 pygame 模块, 返回 (成功数量, 失败数量) pygame.quit() # 取消初始化所有 pygame 模块, init() 的反操作 pygame.get_init() -> bool # 如果 pygame 当前已初始化,则返回 True pygame.error(message) -> error # 标准 pygame 异常的构造方法 pygame.get_error() -> errorstr # 获取当前错误信息 pygame.set_error(error_msg) # 设置当前错误信息 pygame.get_sdl_version() -> (major, minor, patch) # 获取 SDL 的版本号 pygame.get_sdl_byteorder() -> int # 获取 SDL 的字节顺序 pygame.register_quit(callable) # 注册一个在 pygame 退出时调用的函数 pygame.encode_string([obj [, encoding [, errors [, etype]]]]) -> bytes or None # 编码 Unicode 或字节对象 pygame.encode_file_path([obj [, etype]]) -> bytes or None # 将 Unicode 或字节对象编码为文件系统路径 5. Pygame 主要模块

pygame 包含的主要子模块:

#模块描述1pygame.display控制显示窗口或屏幕2pygame.surface内存中的图像模块3pygame.color颜色模块4pygame.rect矩形区域5pygame.event管理事件和事件队列6pygame.image保存/加载、绘制本地图片7pygame.font文本绘制 与 字体模块8pygame.draw绘制几何图形9pygame.mixer播放音效10pygame.mixer_music播放背景音乐11pygame.transform缩放、旋转和翻转图像12pygame.time帧速率与时间控制13pygame.cursors加载光标图像,包括标准光标14pygame.sprite带有基本游戏对象(精灵)类的模块


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3