Pygame是什么
“å¦‚æžœè¯´æˆ‘æ¯”å…¶ä»–äººçœ‹çš„æ›´è¿œï¼Œé‚£æ˜¯å› ä¸ºæˆ‘ç«™åœ¨å·¨äººçš„è‚©è†€ä¸Šã€‚”第三方库就相当于巨人,它为程åº�å¼€å�‘者们æ��供了众多现æˆ�的模å�—。
接下æ�¥ï¼Œæˆ‘们è¦�讲的 Pygame 就是第三库ä¸é�žå¸¸æœ‰è¶£ã€�实用的一个模å�—。顾å��æ€�义,Pygame 是一个专门用æ�¥å¼€å�‘游æˆ�çš„ Python 模å�—,主è¦�为开å�‘ã€�设计 2D 电å�游æˆ�而生,它是一个å…�è´¹ã€�å¼€æº�的第三方软件包,支æŒ�多ç§�æ“�作系统,具有良好的跨平å�°æ€§ï¼ˆæ¯”如 Windowsã€�Linuxã€�Mac ç‰ï¼‰ã€‚Pygame 是 Pete Shinners 在 SDL(Simple DirectMedia Layer,一套开æº�的跨平å�°å¤šåª’体开å�‘库)基础上开å�‘而æ�¥ï¼Œå…¶ç›®çš„æ˜¯å�–代 PySDL。

图1:Pygame
截æ¢åˆ° 2020 å¹´ 10 月 28 日,Pygame å·²ç»�诞生 20 周年。
SDL 是一套开放æº�代ç �的跨平å�°å¤šåª’体开å�‘库,使用 Cè¯è¨€ç¼–写,它æ��供了多ç§�控制图åƒ�ã€�声音ã€�输入/输出的函数,Pygame å�¯ä»¥çœ‹å�šæ˜¯å¯¹ SDL çš„å°�装,在 SDL 库基础上æ��供了å�„ç§� Python çš„ API接å�£ã€‚ç›®å‰� SDL 主è¦�用于多媒体领域,比如开å�‘游æˆ�ã€�模拟器ã€�åª’ä½“æ’æ”¾å™¨ç‰ã€‚
图2:SDL
Python 作为一门解释型è¯è¨€å¹¶ä¸�适å�ˆå¼€å�‘大型的 3D 游æˆ�,但 Python 通过对其他è¯è¨€çš„æŽ¥å�£å°�装,使自身具备了开å�‘大型 3D 游æˆ�的能力,例如 Panda3D 的底层是用 C++ è¯è¨€ç¼–写的。一些较为知å��çš„ 3D 游æˆ�,比如é”兽世界ã€�文明å¸�国4ã€�战地风云2,这些游æˆ�都是使用 Python è¯è¨€å¼€å�‘的,而国内较为知å��çš„“阴阳师”手游,也是由 Python è¯è¨€å¼€å�‘而æˆ�。
“ä¿—è¯�说,术业有专攻”,æ¯�一ç§�è¯è¨€éƒ½æœ‰è‡ªå·±æ“…长的一方é�¢ï¼Œä¸�èƒ½å› ä¸ºæŸ�ç§�è¯è¨€ä¸�适å�ˆæŸ�一领域,就认为它是劣质è¯è¨€ã€‚
Pygame 官方网站(https://www.pygame.org/tags/all)�供许多丰富的游�案例,它们全部使用 Pygame 开�,如下所示:
图3:Pygame官方案例
通过官网å�¯ä»¥å¾ˆæ–¹ä¾¿åœ°æ‰¾åˆ°å¹¶ä¸‹è½½è¿™äº›æ¸¸æˆ�。—> 点击å‰�往。这些项目案例能为您开å�‘自己的游æˆ�æ��供一些æ€�路和帮助。
å�‡å¦‚您从æ�¥æ²¡æœ‰æŽ¥è§¦è¿‡æ¸¸æˆ�å¼€å�‘,那么å¦ä¹ Pygame 是一个ä¸�错的选择,它é�žå¸¸é€‚å�ˆåˆ�å¦è€…å¦ä¹ ,您å�¯ä»¥æŠŠå®ƒå½“å�šè¿›å…¥æ¸¸æˆ�å¼€å�‘世界的“æ•²é—¨ç –”,通过对 Pygame çš„å¦ä¹ ,您将了解到更为广阔的世界。
扩展知识
如果您想å�šä¸“业的游æˆ�å¼€å�‘工程师,建议å¦ä¹ C/C++ã€�C# è¯è¨€ï¼Œè¿™äº›è¯è¨€è™½ç„¶è¯æ³•略显å¤�æ�‚,但是其性能相比于 Python æ�¥è¯´è¦�好的多。就当下而言,市é�¢ä¸Šæœ€ä¸ºæµ�行的游æˆ�å¼€å�‘å¹³å�°ï¼ˆå�³æ¸¸æˆ�引擎)分别是 Unity å’Œ UE4,这两个平å�°çš„ä¾§é‡�点ä¸�å�Œï¼Œå‰�者适å�ˆäºŽç§»åŠ¨ç«¯æ¸¸æˆ�的开å�‘(支æŒ� C# è¯è¨€ï¼‰ï¼Œè€Œå�Žè€…æ›´å��å�‘于 PC 端游æˆ�的开å�‘(支æŒ� C++ è¯è¨€ï¼‰ï¼Œæ¤å¤„ä¸�å�šæ·±å…¥æŽ¢è®¨ï¼Œå¦‚æžœæ‚¨å¯¹å®ƒä»¬æ„Ÿå…´è¶£çš„è¯�,å�¯ä»¥è‡ªè¡Œç ”究。
图4:游�开�引擎
UE4 和 Uinty 开�了许多优秀的游�,比如 UE4 开�了《�地求生:刺激战场》,而 Unity 开�了《使命�唤手游版》。
关注公众å�·ã€Œç«™é•¿ä¸¥é•¿ç”Ÿã€�,在手机上阅读所有教程,éš�æ—¶éš�地都能å¦ä¹ 。本公众å�·ç”±Cè¯è¨€ä¸æ–‡ç½‘站长亲自è¿�è�¥ï¼Œé•¿æœŸæ›´æ–°ï¼Œå�šæŒ�原创。

微信扫ç �关注公众å�·
优秀文ç«
- Linux dumpe2fs命令:查看文件系统信�
- 在Cè¯è¨€ä¸ä½¿ç”¨è‹±æ–‡å—符
- MySQL MONTHNAME函数:获�指定日期月份的英文�称
- MySQL INNER JOIN:内连接查询
- 普里姆算法(Prim算法)求最å°�生æˆ�æ ‘
- Windows下使用WSAStartup()å‡½æ•°åŠ è½½DLL
- CSS cursorï¼ˆé¼ æ ‡æ ·å¼�)
- Pandas使用的注�事项
- Pillow图åƒ�å‡ ä½•å�˜æ�¢
- SaaS模�到底是什么?