About the SGE

The SGE Game Engine ("SGE", pronounced like "Sage") is a general-purpose 2-D game engine. It takes care of several details for you so you can focus on the game itself. This makes more rapid game development possible, and it also makes the SGE easy to learn.

The SGE is written in and for Python. It is currently implemented with Pygame as the backend. Alternative implementations will be developed in the future, likely with PySDL2 and/or Pyglet.

The SGE is libre software, and the documentation is also libre.

The SGE was originally a sub-project of another project called "Stellar", hence its original name, the "Stellar Game Engine".

Screenshot of a game made with the SGE.

The SGE has many great features, including:

  • Window size management: Just tell the SGE how you want the game to be scaled and it will handle the rest.
  • Advanced collision detection: The SGE's powerful direction-based collision detection makes all kinds of interactions much easier.
  • Parallax scrolling: Simply tell the SGE what the background layers are and how fast they move, and you can achieve a magnificent 3-D illusion in minutes.
  • Image transformation: Rotate, scale, and blend images as you please.
  • Split-screen views: Easily make as many views as you want, in any configuration you like. Great for multiplayer games.
  • Delta timing: Game running slow? With the SGE's built-in delta timing support, you can easily eliminate that feeling of sluggishness.
  • Transitions: Built-in support for several different kinds of transitions between rooms.
  • Platform-independence: A program written for the SGE can run on just about any PC, including Windows, Mac OS X, and GNU/Linux systems.
  • Libre software: Full source code is available under the terms of the GNU Lesser General Public License. No draconian EULA, no restrictions on commercial use, no resource limitations, no "trial periods", and no lock-in. You truly own your copy of the SGE, and you can change it in any way you want.

Want more? Libre software games can also take advantage of the powerful xSGE package, which gives you GUI widgets, physics, and more: