Doomsday

The Doomsday Engine is a source port with support for Doom, Heretic, and Hexen. It runs on Linux, Mac OS X, and Windows, and is presently developed by Jaakko Keränen (skyjake) and Daniel Swanson (DaniJ). Former developers include Jamie Jones (Yagisan).

Doomsday itself is a multi-game supporting engine and developed along with it are numerous plugins; e.g. game plugins which are necessary to actually play a game using it. Four official plugins are being developed by the core deng team alongside the engine: jDoom, jHeretic, jHexen and recently, jDoom64. The current stable version of Doomsday is. The current development version is 1.9.0 beta 5.1.

Since mid 2005, the deng team has been at work on the next major iteration of Doomsday; version 1.9.0 and this newest branch of Doomsday remains in beta.

Support and development is often carried out in #doomsday on irc.freenode.net, with long term planning done at dengDevs.

Engine Features

 * Cross-platform. Supported platforms include; Windows, Linux and MacOS.
 * Hardware-accelerated graphics engine (when used with a required renderer plugin).
 * 3D models; Quake's MD2 format and Doomsday's DMD format with LOD support.
 * Object, world and camera movement smoothing.
 * Vector and Dynamic lightning for 3D models, sprites and particles.
 * Particle Generator effect sub-system.
 * Dynamic Lighting.
 * FakeRadio (Radiosity lighting).
 * World-surface decoration effects.
 * Lens flares.
 * Coloured lighting and dominant-light source biasing.
 * Object shadowing effects.
 * Skyboxes and 3D sky models.
 * 3D positional audio (sound fx) (when used with an audio plugin that supports this feature such as dsOpenAL).
 * EAX's and A3D's environmental sound processing effects (when used with an audio plugin that supports this feature).
 * High-resolution textures (PNG, TGA, PCX) and detail textures.
 * 16-player client/server networking via TCP/IP, IPX, modem, or serial link, with Multiplayer menu for setup of games.
 * Easy-to-use Control Panel for configuration, accessed quickly with Shift-Esc.
 * Console for modifying settings and giving commands.
 * Configurable player controls (bindings) and input manipulators (smoothing, look spring etc...).
 * Uses plain-text definition files for game data such as thing types and states, sound and music information, map configuration and more.

Games

 * jDoom - Doom, Doom II, Evilution and Plutonia
 * jDoom64 - Doom 64: Absolution TC (currently in-development)
 * jHeretic - Heretic
 * jHexen - Hexen

Renderers

 * drOpenGL - OpenGL

Audio

 * dsDS8 - DirectSound3D 8 audio plugin; plays 3D positional sound fx (with optional EAX effects) and music
 * dsA3D - Aureal 3D 3.0 audio plugin; plays 3D positional sound effects.
 * dsOpenAL - OpenAL audio plugin; plays 3D positional sound fx (with optional EAX effects) and music
 * dsSDLMixer - SDL_Mixer audio plugin; plays a wide variety of music files (e.g. MIDI, OGG, MP3, or MOD)

Misc

 * dpDehRead - DeHackEd patch reader
 * dpMapLoad - Doom and Hexen format map reader with built-in GL Node builder.

License
The entire Doomsday project is licensed under the terms of the GNU General Public License (Version 2). Prior to Raven Softwares source code rerelease on September 4, 2008 the jHeretic and jHexen libraries were covered by a non-profit End User License Agreement. The Doomsday project relicensed it's changes to GPLv2 on September 12, 2008.

History
The project started out as a dedicated source port with support for Hexen. Later, versions of the project were created for Doom and Heretic. Soon after which, common functionality among the projects was collected together and split into a common core component; the Doomsday engine was born.

Although originally based upon the Hexen source code the engine has since been rewritten completely.