Halyard is our in-house GPLed multimedia engine. It currently runs on Windows, but there is an experimental Mac port. Halyard is based on PLT Scheme, wxWidgets and the Quake 2 Engine. It includes a rudimentary IDE based on Scintilla.
Halyard was used for two in-house projects: Virtual Terrorism Response Academy and Sexual Assault: Forensic and Clinical Management.
At the moment, Halyard is almost entirely undocumented, and the toolset is in heavy flux as we prepare for our next project. Be warned! We have lots of known bugs.
Halyard in action
Here is a reduced-framerate video of scenes from Virtual Terrorism Response Academy. In practice, we measure framerates of around 115 frames per second.
(Ogg Theora and other versions of this screencast.)
We use the wxQuake2 game engine, which is based on id Software's Quake 2. The initial wxWidgets integration work was performed Vadim Zeitlin.
Example project
You
may download
a standalone copy of halyard-test, our in-house test
project. The wiki contains instructions
for getting started.
Source code
You can either download source tarballs or use git:
git clone git://imlsrc.dartmouth.edu/halyard
You may also browse the source code
using gitweb.
Most of our code lives
in Common
(for the interface-indpendent code), wx/src
(for the wxWidgets GUI code), and test/Runtime/halyard
(for the Scheme runtime).
If you want to build the engine, start by
reading HACKING.txt.
These instructions are usually out-of-date, and we appreciate patches.
Mailing list
The mailing list is a medium-traffic developers list. Please send patches inline in plain-text e-mail.
IRC
We also have an IRC channel for getting quick feedback on patches or asking simple questions. Just join #halyard on Freenode. We don't have very many developers yet, so there might be a wait before anyone is available.

