Pygame是什么

 
Python 是当下最为ç�«çƒ­ï¼Œä¸”功能最为全é�¢çš„一门编程语言。Python 之所以深å�—大家喜爱, 除了å�¯ä»¥è¢«åº”用到“人工智能”领域之外,还å�¯ä»¥å»¶ä¼¸åˆ°æ•°æ�®åˆ†æž�ã€�Web å¼€å�‘ã€�自动化测试ã€�自然语言处ç�†ã€�游æˆ�å¼€å�‘ç­‰å�„个领域。这一切的实现得益于 Python 有一个强大的第三方库(网å�€ï¼šhttps://pypi.org/),这个第三方库相当于一个手机软件市场,å…�许我们éš�æ„�下载å�„å¼�å�„样的软件包,并且开箱å�³ç”¨ï¼Œè¿™å¤§å¤§æ��高了 Python 语言的编程效率和实用性。

“如果说我比其他人看的更远,那是因为我站在巨人的肩膀上。”第三方库就相当于巨人,它为程åº�å¼€å�‘者们æ��供了众多现æˆ�的模å�—。

接下�,我们�讲的 Pygame 就是第三库中�常有趣�实用的一个模�。

顾å��æ€�义,Pygame 是一个专门用æ�¥å¼€å�‘游æˆ�çš„ Python 模å�—,主è¦�为开å�‘ã€�设计 2D 电å­�游æˆ�而生,它是一个å…�è´¹ã€�å¼€æº�的第三方软件包,支æŒ�多ç§�æ“�作系统,具有良好的跨平å�°æ€§ï¼ˆæ¯”如 Windowsã€�Linuxã€�Mac 等)。Pygame 是 Pete Shinners åœ¨ SDL(Simple DirectMedia Layer,一套开æº�的跨平å�°å¤šåª’体开å�‘库)基础上开å�‘而æ�¥ï¼Œå…¶ç›®çš„æ˜¯å�–代 PySDL。

pygame图标
图1:Pygame
 

截止到 2020 年 10 月 28 日,Pygame 已�诞生 20 周年。

SDL 是一套开放�代�的跨平�多媒体开�库,使用 C语言编写,它�供了多�控制图��声音�输入/输出的函数,Pygame �以看�是对 SDL 的�装,在 SDL 库基础上�供了�� Python 的 API接�。目� SDL 主�用于多媒体领域,比如开�游��模拟器�媒体播放器等。

SDL图标
图2:SDL
 
通过 Pygame 我们能够创建���样的游�和多媒体程�,但相比于开�大型 3D 游��说,它更擅长与开� 2D 游�,比如扫雷�纸牌游��贪�蛇�超级马里奥�飞机大战等,如果是 3D 游�,�以选择一些功能更为全�的 Python 游�开�库,比如 Panda3D(迪士尼开�的3D游�引擎),PyOgre(Ogre 3D渲染引擎)等。

Python 作为一门解释型语言并ä¸�适å�ˆå¼€å�‘大型的 3D 游æˆ�,但 Python 通过对其他语言的接å�£å°�装,使自身具备了开å�‘大型 3D 游æˆ�的能力,例如 Panda3D 的底层是用 C++ 语言编写的。一些较为知å��çš„ 3D 游æˆ�,比如魔兽世界ã€�文明å¸�国4ã€�战地风云2,这些游æˆ�都是使用 Python 语言开å�‘的,而国内较为知å��çš„“阴阳师”手游,也是由 Python 语言开å�‘而æˆ�。

“ä¿—è¯�说,术业有专攻”,æ¯�一ç§�语言都有自己擅长的一方é�¢ï¼Œä¸�能因为æŸ�ç§�语言ä¸�适å�ˆæŸ�一领域,就认为它是劣质语言。

Pygame 官方网站(https://www.pygame.org/tags/all)�供许多丰富的游�案例,它们全部使用 Pygame 开�,如下所示:

pygame官网案例
图3:Pygame官方案例

通过官网å�¯ä»¥å¾ˆæ–¹ä¾¿åœ°æ‰¾åˆ°å¹¶ä¸‹è½½è¿™äº›æ¸¸æˆ�。—> ç‚¹å‡»å‰�往。这些项目案例能为您开å�‘自己的游æˆ�æ��供一些æ€�路和帮助。

å�‡å¦‚您从æ�¥æ²¡æœ‰æŽ¥è§¦è¿‡æ¸¸æˆ�å¼€å�‘,那么学习 Pygame 是一个ä¸�错的选择,它é�žå¸¸é€‚å�ˆåˆ�学者学习,您å�¯ä»¥æŠŠå®ƒå½“å�šè¿›å…¥æ¸¸æˆ�å¼€å�‘世界的“敲门砖”,通过对 Pygame 的学习,您将了解到更为广阔的世界。

扩展知识

如果您想å�šä¸“业的游æˆ�å¼€å�‘工程师,建议学习 C/C++ã€�C# 语言,这些语言虽然语法略显å¤�æ�‚,但是其性能相比于 Python æ�¥è¯´è¦�好的多。就当下而言,市é�¢ä¸Šæœ€ä¸ºæµ�行的游æˆ�å¼€å�‘å¹³å�°ï¼ˆå�³æ¸¸æˆ�引擎)分别是 Unity å’Œ UE4,这两个平å�°çš„ä¾§é‡�点ä¸�å�Œï¼Œå‰�者适å�ˆäºŽç§»åŠ¨ç«¯æ¸¸æˆ�的开å�‘(支æŒ� C# 语言),而å�Žè€…æ›´å��å�‘于 PC 端游æˆ�的开å�‘(支æŒ� C++ 语言),此处ä¸�å�šæ·±å…¥æŽ¢è®¨ï¼Œå¦‚æžœæ‚¨å¯¹å®ƒä»¬æ„Ÿå…´è¶£çš„è¯�,å�¯ä»¥è‡ªè¡Œç ”究。

Pygame游�开�引擎
图4:游�开�引擎

UE4 和 Uinty 开�了许多优秀的游�,比如 UE4 开�了《�地求生:刺激战场》,而 Unity 开�了《使命�唤手游版》。

关注公众�「站长严长生�,在手机上阅读所有教程,�时�地都能学习。本公众�由C语言中文网站长亲自��,长期更新,��原创。

公众�二维�
微信扫�关注公众�

 

加入微信交�群,一起学习�枯燥。内�一款�索神器,�费下载全网书�和视频。