|3DGE, Hyper3DGE, Dream3DGE, EDGE|
|Developer(s)||Coraline (Chu), Alex Nesemann, Joseph Fenton, Rachael Alexanderson (Eruanna), Brendan Doe, Damir Srpčič, Maciej Kadlubowski|
|Non-Developer(s)||Chris Mullen (CeeJay), UsernameAK, gameblabla, Andrew Apted, Josh Pearson, Benjamin Moir|
|Initial release||1.35d (2011-04-11, 7 years ago)|
|Latest release||2.1.0-Test3 (2017-12-13, 8 months ago)|
|Written in||C++, QuakeC (modified), ASM|
|Target Platform||Windows, KallistiOS, MacOSX, Linux, OpenBSD|
|License||GNU General Public License v2+|
The port comes with both x86/x64 Windows and Linux binaries, though the user can build the Macintosh and Dreamcast versions from source. 3DGE was initially forked from EDGE 1.32, and the codebase was merged with the final EDGE 1.35 release the day EDGE ceased development.
As well as adding new features, the team also incorporated many fixes for overlooked bugs left behind from EDGE. The name is a deliberate play on EDGE - the "3" is to symbolize the third line of continuation from EDGE and DOSDoom, and is pronounced the same as EDGE. The port is hardware-accelerated only, and also implements support for KallistiGL (PowerVR) for the Dreamcast platform.
A few notable mods in development are Duke it Out in DOOM and , both by Chris Mullen (CeeJay), and a to the Marc A. Pullen (Fanatic) mod QDOOM. SLaVE and Hypertension: Harmony of Darkness are two commercial products using this engine, both being developed by Isotope Softworks and published by Goat Store Publishing. The full list of known and active mods are here.
Dream3DGE was a Sega Dreamcast-only port of EDGE 1.29, and has high compatibility with pre-1.31 mods, as it cannot currently run anything created with EDGE 1.31 or above. It must be built with KallistOS. It contains most, if not all, functionality from the parent port. This branch (and EDGE 1.29, on which it was based) was abandoned officially and rewritten and integrated back into 3DGE with version 2.0. The Dreamcast code utilities KallistiGL instead of OpenGL for important rendering functions concerning the SH-4 CPU.
As of the latest development builds for 2.1.0:
- Dual OpenGL 1.1/3.0 Renderer Paths
- 64-bit support
- SDL2 integration
- UDMF support
- PAK/PK3/PK7/EPK archive support
- Rendering interpolation and Vsync support
- OPL synth playback (using nukeyT's OPLlib)
- Basic shadows
- Integration of ZDBSP and improvements to glBSP, including building nodes from archives
- Several major and minor bugs squashed from EDGE 1.35
- Heretic/Chex Quest IWAD support
- MD3 and 3DGE model support
- Two-player splitscreen co-op or deathmatch (local only)
- RoQ video support for cinematics
- Runs on the Sega Dreamcast console.
- GLSL shader support
- Normal, specular and brightmap support on models
- DDF/RTS/COAL enhancements and bugfixes
- Polyobjects (more types will be supported in the future)
- Camera-Man scripts: New scripting language which utilizes cameras for complete camera control.
- RoQ Render-to-Texture (for models, world textures, and menus/backgrounds)
- New DDF types: Terrains.ddf, Sprites.ddf, Inventory.ddf and Shaders.ddf
- Cross-platform IWAD selector
- Dynamic GLSL shader compilation
- Normal, specular, and brightmap support on textures
- True inventory support
- Dynamic planar shadow system for dynamic lights
- Half-Life MDL and MS3D Model format support
- Quake 3: Arena-style shader-based sky system
- Better Boom compatibility
- Decals on all surfaces (using Decals.ddf)
- Wolfenstein_3D support (WLF_*)
- Rise of the Triad support (ROTT_*)
- Blake Stone support (BLK_*)
- Strife support
Heretic support is being finalized and is in beta as of 2.1.0-Test3, using a similarly named definition file called HDF (Heretic Definition File). The HDF definitions were written initially by CeeJay, before the 3DGE Team took over to write proper IWAD support.
- Official 3DGE project site
- 3DGE source release packages, hosted by SourceForge
- 3DGE git repository, hosted by github
- Compiled SVN builds for Windows, Linux, Mac, and Dreamcast at DRD Team
- Documentation at the 3DGE wiki
|Source code genealogy|