当前位置:   article > 正文

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

pygame模块

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

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

专栏目录: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
  • 1

升级 Pygame 模块:

python -m pip install --upgrade pygame
  • 1

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()                                          # 当前模块被直接运行时调用主函数
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

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

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 或字节对象编码为文件系统路径
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

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带有基本游戏对象(精灵)类的模块
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/98372
推荐阅读
相关标签
  

闽ICP备14008679号