A batteries-included game engine.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.



Until It Dies is a simple game and application engine designed to make it damn easy to get a window up to display all the shiny things you might want to do. It has support loading and drawing images, audio, and text.

UID uses OpenGL to draw graphics, and is built on top of CLOS for flexibility and extensibility.

UID itself is MIT licensed, and all its dependencies use permissive licenses. See below for specifics.

For more information, issue tracking, etc, check out the project page at http://redmine.sykosomatic.org/projects/uid

Getting it to run

UID is split into several modules. The base system, until-it-dies.base, includes the basics for the engine, such as windowing, the resource manager, primitive drawing, and colors. If this is all you need, you can simply load until-it-dies.base. The only dependencies for this base system are CL-OpenGL, glop, and alexandria.

Besides the base system, UID currently includes systems that provide fancier features, which can optionally be loaded:

  • until-it-dies.graphics provides image loading, textures, animations, text rendering, and sprites. It requires DevIL to be installed in the system.

  • until-it-dies.sound provides positional audio. You must have openal and freealut installed in order to use this module. This module also depends on cl-openal for bindings.

If you want the whole thing, the until-it-dies.asd system will load everything.

As of right now, all of the modules dump their symbols into the base until-it-dies package. It's recommended that you do not import these symbols into your system, but instead prepend any UID symbols with the UID: nickname.

How the hell do I use it?

UID has still not been released, so you're mostly on your own there until the API stabilizes and formal documentation gets written. If you're adventurous and/or curious, check out the examples/ directory for a variety of examples that showcase some of UID's features.

If you're working on something and want help, feel free to e-mail me (kzm@sykosomatic.org), or show up it #sykosomatic@freenode on IRC, and I'll do my best to help you get going.

Wahhh, I hate Lisp

Check out Pyglet: http://www.pyglet.org.