Home      Discussion      Topics      Dictionary      Almanac
Signup       Login
Pygame

Pygame

Overview
Pygame is a cross-platform
Cross-platform
In computing, cross-platform is a term used to refer to computer software or computing methods and concepts that are implemented and inter-operate on multiple computer platforms...

 set of Python
Python (programming language)
Python is a general-purpose high-level programming language. Its design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

 modules designed for writing video games.
It includes computer graphics
Computer graphics
Computer graphics are graphics created using computers and, more generally, the representation and manipulation of pictorial data by a computer....

 and sound libraries designed to be used with the Python programming language. It is built over the Simple DirectMedia Layer
Simple DirectMedia Layer
Simple DirectMedia Layer is a cross-platform, free and open source software multimedia library written in C that presents a simple interface to various platforms' graphics, sound, and input devices...

 (SDL) library, with the intention of allowing real-time computer game development without the restraints and low-level
Low-level programming language
In computer science, a low-level programming language is a language that provides little or no abstraction from a computer's instruction set architecture...

 mechanics of the C programming language
C (programming language)
C is a general-purpose computer programming language developed in 1972 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

 and its derivatives. This is based on the assumption that the most expensive functions inside games (mainly the graphics part) can be completely abstracted from the game logic in itself, making it possible to use a high-level programming language
High-level programming language
In computing, a high-level programming language is a programming language with strong abstraction from the details of the computer. In comparison to low-level programming languages, it may use natural language elements, be easier to use, or be more portable across platforms...

 like Python
Python (programming language)
Python is a general-purpose high-level programming language. Its design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

 to structure the game.

Pygame was built to replace pySDL after its sudden death.
Discussion
Ask a question about 'Pygame'
Start a new discussion about 'Pygame'
Answer questions from other users
Full Discussion Forum
 
Encyclopedia
Pygame is a cross-platform
Cross-platform
In computing, cross-platform is a term used to refer to computer software or computing methods and concepts that are implemented and inter-operate on multiple computer platforms...

 set of Python
Python (programming language)
Python is a general-purpose high-level programming language. Its design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

 modules designed for writing video games.
It includes computer graphics
Computer graphics
Computer graphics are graphics created using computers and, more generally, the representation and manipulation of pictorial data by a computer....

 and sound libraries designed to be used with the Python programming language. It is built over the Simple DirectMedia Layer
Simple DirectMedia Layer
Simple DirectMedia Layer is a cross-platform, free and open source software multimedia library written in C that presents a simple interface to various platforms' graphics, sound, and input devices...

 (SDL) library, with the intention of allowing real-time computer game development without the restraints and low-level
Low-level programming language
In computer science, a low-level programming language is a language that provides little or no abstraction from a computer's instruction set architecture...

 mechanics of the C programming language
C (programming language)
C is a general-purpose computer programming language developed in 1972 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

 and its derivatives. This is based on the assumption that the most expensive functions inside games (mainly the graphics part) can be completely abstracted from the game logic in itself, making it possible to use a high-level programming language
High-level programming language
In computing, a high-level programming language is a programming language with strong abstraction from the details of the computer. In comparison to low-level programming languages, it may use natural language elements, be easier to use, or be more portable across platforms...

 like Python
Python (programming language)
Python is a general-purpose high-level programming language. Its design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

 to structure the game.

Pygame was built to replace pySDL after its sudden death.

Pygame was originally written by Pete Shinners and is released under the GNU Lesser General Public License
GNU Lesser General Public License
The GNU Lesser General Public License or LGPL is a free software license published by the Free Software Foundation . It was designed as a compromise between the strong-copyleft GNU General Public License or GPL and permissive licenses such as the BSD licenses and the MIT License...

. It is now an open source free software community project (since around 2004/2005).

See also



2D Engines and Libraries:
  • Pygame Utilities (PGU) is a collection of tools and libraries that enhance Pygame. Tools include a tile editor and a level editor
    Level editor
    A level editor is a software application used to design levels, maps or campaigns for a video game...

     (tile, isometric, hexagonal). GUI enhancements include full featured gui, html rendering, document layout, and text rendering. The libraries include a sprite and tile engine
    Tile engine
    A tile engine is a computer graphics technique which generates a larger graphic from re-using a number of smaller graphics to save RAM and increase real-time rendering performance.- Basic tile map history :...

     (tile, isometric, hexagonal), a state engine, a timer, and a high score system.

External links

  • Pygame homepage — Pygame documentation, wiki, news, download and more.
  • An Introduction to Python Game Programming - written by Rene Dudfield and Geoff Howland
  • Pyweek homepage — regular contest to write a game during one week using Python (most entries use pygame).
  • [news://gmane.comp.python.pygame Pygame newsgroup] (web access) — the "official" Pygame newsgroup
    Newsgroup
    A usenet newsgroup is a repository usually within the Usenet system, for messages posted from many users in different locations. The term may be confusing to some, because it is usually a discussion group. Newsgroups are technically distinct from, but functionally similar to, discussion forums on...

    , requires registration
  • Line by line tutorial — Tutorial for beginners by Pete Shinners.
  • Creating Games with Python - A tutorial explaining how to use Pygame for game development and improved execution.
  • pyGame Basics and Arinoid tutorials video tutorials at showmedo
    Showmedo
    ShowMeDo is a video sharing website where users can upload, view and share Video tutorials.Most of the screencasts focus on themes related to computer programming languages and Open Source software, especially Python....

  • Beginning Game Development with Python and Pygame -- A new book discussing game development using Pygame
  • Game Programming the L Line -- A book that introduces programming and game development with Python and pygame
  • pyOpenGL - Python OpenGL Bindings
  • PyGame Tutorials - tutorials with OOP approach.