From SwinGame

SwinGame is a game development API, and set of software development kits, for students who are learning to program. SwinGames goal is to create a simple, easy to use, procedural API for students to use to create games as they learn to program. The SwinGame SDK is built on top of the Simple DirectMedia Layer library, and the JEDI SDL pascal interface.


  • Graphics
    • Primitive shapes and lines
    • Loading a variety of formats including bmp, gif, jpeg, lbm, pcx, png, pnm, tga, tiff, tcf, xpm, and xv
    • Drawing bitmaps
    • Drawing sprites, with static or animated images (with alpha channel support)
    • Drawing texts (TrueType font can be used)
    • Camera support (can change the camera view point)
  • Audio
    • Playing sound effects, once or looped
    • Playing background music
    • Loading a variety of formats including wav, ogg, and mp3 (for music)
  • Physics
    • Vector and Coordinate based movement for sprites
    • Sprite collision and repulsion (pixel collision or bounded rectangle collision can be used)
    • Functions to create and manipulate movement vectors
  • Inputs
    • Keyboard input
    • Mouse input
  • MappyLoader
    • Load maps made from the Tile based editor Mappy
    • Supports static and animated Tiles
    • Collisions and Triggers/Events also supported
  • Others
    • Simple resource management
    • Automated Frame limiting


  • The first version of SwinGame was created by Daniel Chambers in the PSD Summer Semester program of 2006. Daniel developed a side scrolling game called Escape from Swinburne. This version of SwinGame used Windows GDI for drawing and OpenAL for audio.
  • In 2007 semester 1 Andrew Cain redeveloped the API to use the SDL (Simple DirectMedia Layer) library, enabling cross platform development and seriously improving performance. This version of SwinGame introduced some physics operations to support collisions.
  • The summer project for 2007 took the existing SwinGame and extended its features. Dividing the code for better management, and adding Mappy support, animated sprites, improved resource management, more physics operations, showcases, and support for Visual Basic 6, Visual C#, and Visual Basic .NET.

SwinGame will continue to be extended in the future, and we welcome your suggestions or comments.