BuNg was experimental engine developed by Sam
Jansen and Jesse Baker
with input from others ar times.
The version described on this page was used for research projects
in Waikato University. We also developed it into a hobbyish first
person shooter game, and got to the stage of some basic networked play
working, before we got busy with other things and left university.
- OpenGL and Direct3D rendering. (The Direct3D renderer has
never really been kept up to date, but does work)
- Loads .zip file archives using PhysicsFS.
- MD2 and MD3 model loading and animation. Support for static
.OBJ meshs as well.
- OO design which has made development of the Linux port and
D3D renderer simple.
- Octree-based level with view-frustum culling.
- Basic Quake 3 level exporter to convert from BSP files to BuNg
- Texture-mapped text output.
- Collision detection courtesy of the Opcode collision detection
- Collision response to allow the player to slide along walls and
climb up stairs.
- Client/server networking based on the enet networking library.
- Custom XML parser.
- Lua scripting language embedded thanks to luabind.
- Quake3-style shaders
- Particle system
- Curved surfaces using 3d bezier patches.
An example screenshot is
here (Quake3 level) and
here (our own level).
engine was used in a couple of different 3d visualisations as part of
the graduate work done by Jesse and Sam in different research groups at
Jesse uses the BuNg engine as a visualisation tool in his robotics
research. More information here.
Sam wrote a network visualisation application that displays flying
particles that represent the packets crossing a network link. This
software was called BSOD
and endured for some years before evolving away from it's base in