Project Icon

pygame

Python游戏开发多媒体库

Pygame是Python生态系统中的一个多媒体库,专注于游戏开发。它提供2D图形渲染、音频播放、用户输入处理等功能。通过简化游戏编程过程,Pygame使开发者能更容易地创建游戏。该库适合不同经验水平的开发者使用,支持多种游戏类型的开发。Pygame保持活跃更新,并有社区支持。

.. image:: https://raw.githubusercontent.com/pygame/pygame/main/docs/reST/_static/pygame_logo.svg :alt: pygame :target: https://www.pygame.org/

|AppVeyorBuild| |PyPiVersion| |PyPiLicense| |Python3| |GithubCommits| |BlackFormatBadge|

Pygame_是一个免费开源的跨平台库,用于使用Python开发多媒体应用程序,如视频游戏。它使用Simple DirectMedia Layer库_和其他几个流行的库来抽象最常用的功能,使编写这些程序变得更加直观。

我们需要您的帮助_来使pygame变得尽可能好!欢迎新的贡献者。

安装

在安装pygame之前,您必须检查您的机器上是否已安装Python。要确认,请打开命令提示符(如果您使用Windows)或终端(如果您使用MacOS或Linux),并输入以下内容: ::

python --version

如果出现"Python 3.8.10"之类的消息,则表示Python已正确安装。如果出现错误消息,则表示尚未安装。然后您必须前往官方网站<https://www.python.org/downloads/>_下载。

一旦安装了Python,您还需要进行最后一次检查:查看是否安装了pip。通常,pip会与Python预装,但我们永远不确定。与Python一样,输入以下命令: ::

pip --version

如果出现"pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.8)"之类的消息,您就可以安装pygame了!要安装它,请输入以下命令: ::

pip install pygame

pygame安装完成后,可以通过输入以下命令快速测试您的库,这将打开预装的众多示例游戏之一: ::

python3 -m pygame.examples.aliens

如果这不起作用,官方网站的入门<https://www.pygame.org/wiki/GettingStarted/>_部分提供了更多有关特定平台问题的信息,比如将python添加到机器的PATH设置中。

帮助

如果您刚开始使用pygame,您应该能够相当快速地入门。Pygame附带了许多教程和介绍。还有整个库的完整参考文档。浏览文档页面_上的文档。您也可以通过在终端中运行python -m pygame.docs来本地浏览文档。如果本地找不到文档,它会转而启动在线网站。

在线文档与GitHub上的pygame开发版本保持同步。这可能比您使用的pygame版本稍新一些。要升级到最新的完整版本,请在终端中运行pip install pygame --upgrade

最重要的是,examples目录中有许多可玩的小程序,可以让您立即开始使用代码。

特性

Pygame是一个强大的游戏开发库,提供了广泛的功能来简化您的编码之旅。让我们深入了解pygame所提供的内容:

图形 - 使用pygame,创建动态和引人入胜的图形从未如此简单。该库为2D图形和动画提供了简单而有效的工具,包括对图像、矩形和多边形形状的支持。无论您是经验丰富的游戏开发者还是刚刚入门,pygame都能满足您的需求。

声音 - Pygame还包括播放和操作声音和音乐的支持,使向游戏添加音效和背景音乐变得容易。支持WAV、MP3和OGG文件格式,您有很多选择。

输入 - Pygame提供了直观的函数来处理键盘、鼠标和游戏手柄输入,让您能够快速轻松地在游戏中实现玩家控制。不再需要与复杂的输入代码斗争,pygame使其变得简单。

游戏开发 - 最后,pygame提供了一套专为游戏开发设计的综合工具和功能。从碰撞检测到精灵管理,pygame拥有创建令人兴奋和引人入胜的游戏所需的一切。无论您正在构建平台游戏、益智游戏还是其他任何类型的游戏,pygame都能满足您的需求。

从源代码构建

如果您想使用当前正在开发的功能,或者想为pygame做出贡献,您需要从源代码本地构建pygame,而不是通过pip安装。

从源代码安装相当自动化。最费工夫的部分是编译和安装所有pygame的依赖项。完成后,运行setup.py脚本,它将尝试自动配置、构建和安装pygame。

有关安装和编译的更多信息可在编译wiki页面_上找到。

贡献

  • 文档贡献<https://github.com/pygame/pygame/tree/main/docs>_ - 为主要文档做出贡献的指南
  • 编写您的第一个单元测试<http://renesd.blogspot.com/2019/11/draft-2-of-lets-write-unit-test.html>_ - 如何为Pygame编写第一个Python单元测试的分步指南
  • 如何黑客Pygame<https://www.pygame.org/wiki/Hacking>_ - 有关黑客、开发和修改Pygame的信息
  • 适合初学者的问题追踪器<https://github.com/pygame/pygame/labels/good%20first%20issue>_ - 初学者为项目做出贡献的方式
  • 错误和补丁<https://www.pygame.org/wiki/patchesandbugs>_ - 报告错误
  • 沟通工具<https://www.pygame.org/wiki/info>_ - 更多信息和与Pygame团队联系的方式

致谢

感谢所有为这个库做出贡献的人。特别感谢以下人士。

  • Marcus Von Appen:许多更改和修复,1.7.1+版本的freebsd维护者
  • Lenard Lindstrom:1.8+版本的windows维护者,许多更改和修复
  • Brian Fisher:svn自动构建器、错误追踪器和许多贡献
  • Rene Dudfield:许多更改和修复,1.7+版本的发布管理者/维护者
  • Phil Hassey:为pygame.org网站所做的工作
  • DR0ID:为精灵模块所做的工作
  • Richard Goedeken:他的平滑缩放函数
  • Ulf Ekström:他的像素完美碰撞检测代码
  • Pete Shinners:原作者
  • David Clark:填补右手man位置
  • Ed Boraas和Francis Irving:Debian包
  • Maxim Sobolev:FreeBSD打包
  • Bob Ippolito:MacOS和OS X移植(大量工作!)
  • Jan Ekhol、Ray Kelm和Peter Nicolai:容忍早期设计理念
  • Nat Pryce:开始我们的单元测试
  • Dan Richter:文档工作
  • TheCorruptor:他令人难以置信的标志和图形
  • Nicholas Dudfield:许多测试改进
  • Alex Folkner:pygame-ctypes 感谢以下人员提交补丁和修复:Niki Spahiev、Gordon Tyler、Nathaniel Pryce、Dave Wallace、John Popplewell、Michael Urman、Andrew Straw、Michael Hudson、Ole Martin Bjoerndalen、Herve Cauwelier、James Mazer、Lalo Martins、Timothy Stranex、Chad Lester、Matthias Spiller、Bo Jangeborg、Dmitry Borisov、Campbell Barton、Diego Essaya、Eyal Lotem、Regis Desgroppes、Emmanuel Hainry、Randy Kaelber Matthew L Daniel、Nirav Patel、Forrest Voight、Charlie Nolan、Frankie Robertson、John Krukoff、Lorenz Quack、Nick Irvine、Michael George、Saul Spatz、Thomas Ibbotson、Tom Rothamel、Evan Kroske、Cambell Barton。

特别感谢我们的超级捉虫能手:Angus、Guillaume Proux、Frank Raiser、Austin Henry、Kaweh Kazemi、Arturo Aldama、Mike Mulcheck、Michael Benfield、David Lau

还有许多其他人提出了有用的想法,推动这个项目前进,让我们的工作变得更轻松。谢谢你们!

非常感谢那些撰写文档注释和为pygame.org wiki做出贡献的人。

同时也非常感谢那些创作游戏并将其上传到pygame.org网站供他人学习和享受的人。

非常感谢James Paige为pygame提供bugzilla托管服务。

也要特别感谢Roger Dingledine和SEUL.ORG的团队为我们提供出色的托管服务。

依赖项

Pygame显然强烈依赖于SDL和Python。它还链接和嵌入了几个较小的库。字体模块依赖于SDL_ttf,而SDL_ttf又依赖于freetype。mixer(和mixer.music)模块依赖于SDL_mixer。图像模块依赖于SDL_image,SDL_image还可以使用libjpeg和libpng。transform模块为其自身的rotozoom函数嵌入了SDL_rotozoom的一个版本。surfarray模块需要Python NumPy包来处理多维数值数组。 依赖版本:

+----------+------------------------+ | CPython | >= 3.6 (或使用PyPy3) | +----------+------------------------+ | SDL | >= 2.0.8 | +----------+------------------------+ | SDL_mixer| >= 2.0.0 | +----------+------------------------+ | SDL_image| >= 2.0.2 | +----------+------------------------+ | SDL_ttf | >= 2.0.11 | +----------+------------------------+ | SDL_gfx | (可选,已内置) | +----------+------------------------+ | NumPy | >= 1.6.2 (可选) | +----------+------------------------+

许可证

该库在GNU LGPL 2.1版许可下发布,可以在文件"docs/LGPL.txt"中找到。我们保留将该库未来版本置于不同许可下的权利。

这基本上意味着你可以在任何项目中使用pygame,但如果你对pygame本身进行任何更改或添加,这些更改必须以兼容的许可证发布(最好提交回pygame项目)。闭源和商业游戏是可以的。

"examples"子目录中的程序属于公共领域。

有关依赖项的许可证,请参阅docs/licenses。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号