Sep 28

I thought I’d make a few posts about the tech behind Tap-Fu. Tap-Fu was the fist game released with our game engine (Donkey Tech 1) that has been in development for several years already. The engine boasts a long feature list with a lot of cool stuff:
Fully customizable editor written in wxWidgets
Extensive Visual scripting system featuring lazy updates
Asset packaging system
Fully integrated and flexible GUI system
OpenGL, OpenAL, and SDL support
Flexible file format support for WAV, OBJ, 3DS, PNG, PVR as well as many optimized (and proprietary) formats.
Hot loading with all resources.
Sprite and Bone (GPU skinning) animation systems
Streaming audio sound effects with OpenAL. Streaming music system with Audio Queues or SDL
Streams both ASCII and Obfuscated Binary file formats for reading and writing level data. Save anywhere is fully supported.
Built in networking for multiplayer games over UDP. Full network serialization. (WIP)
Brush/BSP based level design (WIP)
Integrated profiling tools
Pluggable Renderer. Deferred shading renderer on Mac and PC enables hundreds of dynamic lights. Shadow map support
Hardware Shader Support. Normal mapping, Parallax mapping, etc.
Modern C++ programming methodology.
Supported platforms include Mac OS X, Windows, and iPhone
Very flexible particle system
Multithreading support including lock free container classes.
Unit testing framework

The DT1 editor
Using this technology, the Prototypes for both Tap-Fu, Relativity, and a few unannounced titles only took a couple of hours. This includes a full menu system, a customized level editor, save/load and a whole bunch of other features.
Stay tuned for a few posts about some of these specific areas. There’s some neat lessons to be learned.
Leave a Reply
You must be logged in to post a comment.