A batteries-included game engine.
Common Lisp
Permalink
Failed to load latest commit information.
examples Tweaking basic example Jul 1, 2010
src Loop prevented compilation on ECL Jul 16, 2010
.gitignore git doesn't like inline comments :( Jun 13, 2010
.mailmap Added .mailmap for Git Oct 30, 2009
COPYING Updated license information Jun 21, 2010
README.mkdn FINAL SOLUTION TO THE LISPPHOBIA PROBLEM Jun 22, 2010
until-it-dies.asd Updated .asd files before the first release. Jun 21, 2010
until-it-dies.base.asd
until-it-dies.examples.asd Example-related updates Jun 27, 2010
until-it-dies.graphics.asd Bringing back cl-devil as a dependency Jul 1, 2010
until-it-dies.sound.asd

README.mkdn

About

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.