Pygame

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Pygame
Pygame logo.gif
Original author(s)Lenard Lindstrom, René Dudfield, Pete Shinners, Nicholas Dudfield, Thomas Kluyver, others [2].
Developer(s)pygame Community
Initial release28 October 2000; 19 years ago (2000-10-28)[1][2]
Stable release
1.9.6 / April 25, 2019; 9 months ago (2019-04-25)[3]
Preview release
2.0.0.dev6 / October 28, 2019; 3 months ago (2019-10-28)
Repository Edit this at Wikidata
Written inPython, C, Cython, and Assembly[4][5]
Operating systemCross-platform
TypeAPI
LicenseGNU Lesser General Public License
Websitewww.pygame.org

Pygame is a cross-platform set of Python modules designed for writing video games. It includes computer graphics and sound libraries designed to be used with the Python programming language.

History[edit]

Pygame was originally written by Pete Shinners to replace PySDL after its development stalled.[1][6] It has been a community project since 2000[7] and is released under the open source free software GNU Lesser General Public License.[4]

Development of Version2[edit]

Pygame version2 was planned as "pygame reloaded" in 2009, but development and maintenance of pygame completely stopped until the end of 2016 with version 1.9.1. After the release of version 1.9.5 on March 2019, development of new version2 is active on the roadmap.[8]

  • 2019-5-5 pre-release Dev.1
  • 2019-6-20 pre-release Dev.2
  • 2019-7-14 pre-release Dev.3
  • 2019-10-8 pre-release Dev.4
  • 2019-10-28 pre-release Dev.6[9]

Architecture and features[edit]

Pygame uses the Simple DirectMedia Layer (SDL) library,[a] with the intention of allowing real-time computer game development without the low-level mechanics of the C programming language and its derivatives. This is based on the assumption that the most expensive functions inside games can be abstracted from the game logic, making it possible to use a high-level programming language, such as Python, to structure the game.[4]

Other features that SDL doesn't have include vector math, collision detection, 2d sprite scene graph management, MIDI support, camera, pixel-array manipulation, transformations, filtering, advanced freetype font support, and drawing.[10]

Applications using pygame can run on Android phones and tablets with the use of Pygame Subset for Android (pgs4a).[11] Sound, vibration, keyboard, and accelerometer are supported on Android.[12]

Community[edit]

There is a regular competition, called PyWeek, to write games using Python (and usually but not necessarily, Pygame).[13][14][15] The community has created many tutorials for Pygame.[16][17][18][19][20][21]

Notable games using Pygame[edit]

See also[edit]

Notes[edit]

  1. ^ pygame 2 and later versions are based on SDL2, while earlier releases were based on SDL1.[24]

References[edit]

  1. ^ a b Shinners, Pete. "Python Pygame Introduction - History". Pygame.org.
  2. ^ "Downloads - Pygame - Python game development". Pypi.python.org.
  3. ^ "pygame 1.9.6 released with a few regression bug fixes". Github.org.
  4. ^ a b c "About Pygame". Github.com. Retrieved 31 August 2019.
  5. ^ "GettingStarted". Pygame.org.
  6. ^ "pySDL sourceforge page". Sourceforge.net.
  7. ^ "commit by other authors". Github.com.
  8. ^ "pygame 1.9.5 released into the wilds". www.pygame.org.
  9. ^ "pre-release Dev.6". github.org.
  10. ^ "Pygame docs". Pygame.org.
  11. ^ "Example of using RAPT to package Pygame(_sdl2) games.: renpytom/rapt-pygame-example". GitHub. 1 April 2019. Retrieved 1 April 2019.
  12. ^ "Archived copy". Archived from the original on 2014-10-19. Retrieved 2014-10-14.CS1 maint: archived copy as title (link)
  13. ^ "PyWeek - Python Game Programming Challenge". Pyweek.org.
  14. ^ [1][dead link]
  15. ^ "PyWeek - Python Wiki". Wiki.python.org. Retrieved 1 April 2019.
  16. ^ "pygame documentation: Tutorials". Pygame.org.
  17. ^ Shinners, Pete. "Line by line tutorial — Tutorial for beginners". Archived from the original on 2005-02-05.
  18. ^ "Creating Games with Python - A tutorial explaining how to use Pygame for game development and improved execution". Linuxjournal.com.
  19. ^ "PyGame Tutorials - tutorials with OOP approach". Pygametutorials.wikidot.com.
  20. ^ "pyGame Basics". ShowMeDo.com. Archived from the original on 2007-04-29.
  21. ^ "Arinoid tutorials video tutorials at ShowMeDo". Archived from the original on 2007-04-29.
  22. ^ "Dangerous High School Girls in Trouble!". Pygame.org. Retrieved 8 July 2011.
  23. ^ "Save the Date". Paperdino.com. Retrieved 14 October 2014.
  24. ^ "pygame 1.9.5 released into the wilds". Pygame.org.

External links[edit]