Genesis3D: the engine that almost disappeared
In the late 1990s, making a 3D game usually meant having serious money, specialist programmers, or both. A small company called Eclipse Entertainment wanted to change that. Genesis3D was its attempt to put a real 3D engine and game-making tools within reach of ordinary developers.
Eclipse had made a game of its own first. Its team included people from the Cinematronics team behind Jack Nicklaus 4, and in November 1997 it shipped Jack Nicklaus 5 for Accolade, a golf simulator whose course designer let players bring in their own graphics and sound. It reviewed well and sold badly. Genesis3D was announced eight months later, and after that Eclipse was an engine company rather than a games one.
Free was not the same as open
This is a native Linux port of the original Genesis3D, the engine Eclipse Entertainment built from 1996 and released in 1999. It is not Changyou's unrelated 2013 engine of nearly the same name.
Genesis3D was not the first 3D engine, or the best one. Quake had shipped in 1996, Unreal in 1998, and studios were licensing them commercially. What Eclipse did differently was the price. Announced in July 1998 and launched as version 1.0 on 15 May 1999, Genesis3D let you read the source, change it, and ship a product without paying a fee.
There were two conditions. You had to publish your own modifications under the same licence, and you had to play their animated logo before your game started. The licence also required you to display the Genesis3D logo on your marketing materials, advertising and packaging. If you wanted to keep your source code private, you bought a separate commercial licence instead.
The licence was blunt about what it was not. In its own words, Genesis3D “is a commercial product. It is not in the public domain or ‘freeware’ or ‘shareware’.” Source available, with strict obligations.
Those obligations meant the engine built a large library of hobbyist prototypes and comparatively few finished commercial games. Teams that could afford to keep their source code private went elsewhere. Teams that could not used the free tools to build whatever they wanted.
The original headers attribute the core architecture to John Pollard and Charles Bloom.
The games people remember
Genesis3D powered commercial games as well as countless experiments. Extreme PaintBrawl 2 used it for paintball combat. Catechumen and Ominous Horizons turned the first-person shooter into a Christian fantasy adventure. Historical catalogues also connect it with Dragon's Lair 3D: Return to the Lair.
These were not all famous or well reviewed, but they were memorable. They showed what happened when game technology reached people outside the biggest studios: the results could be ambitious, awkward, sincere, odd, or all four at once. That is a more interesting legacy than a list of technical features.
Then the future changed
In October 1999, WildTangent acquired Eclipse's technology and brought the development team with it. The plan was to join Genesis3D with WildTangent's Web Driver and make rich, hardware-accelerated 3D experiences practical on the web. Genesis3D 1.1 followed that November.
It was a hopeful idea, but the industry moved brutally fast. Graphics hardware changed, Windows changed, competing engines grew more capable, and WildTangent's attention moved toward its wider web and games business. Genesis3D did not die on one clearly marked day. Games still shipped with it, and later copies of the source preserved more work. It simply stopped being the future and slowly became something people remembered.
What is different now
The port is not a remaster. The rendering and texture algorithms are the ones Eclipse wrote. What changed is everything underneath them, because a 1999 32-bit Windows program does not survive contact with a modern machine on its own.
- 1920 x 1080 by default. The original shipped for the display modes of 1999. This one opens at 1080p and uses desktop fullscreen, so it takes the resolution your screen already runs at.
- Steady 60 or 120 frames per second. Monotonic pacing with bounded catch-up, rather than running as fast as the loop happens to turn.
- Native Linux, x86-64. SDL2, X11 or XWayland, and OpenGL. No Wine, no compatibility layer.
- Actually 64-bit. The old code wrote eight-byte pointers where the file format expected four. Model and animation records are read and written at fixed widths now, so files survive a round trip.
- Windows and MSVC dependencies removed. Win32 calls replaced with standard C and POSIX, hand-written MSVC assembly replaced with portable C and explicit-width types.
- Old maps load correctly. Legacy BSP texture layouts and colour-key transparency are detected by bounds-checked inspection instead of the inherited guess that could eat the first pixel as metadata.
- Export to GLB. Smooth skinning conversion means actors can leave the engine and open in a modern 3D tool.
- Full player physics. Swept-hull collision against the BSP, stairs, slopes, gravity, floor snapping, jumping, wall sliding and ceiling rejection.
- A library, not just a program. A versioned C API and a shared library, plus a headless mode so worlds, entities and collision can be tested without opening a window.
- Checked with sanitizers. Address, undefined behaviour and leak detection, clean under software rendering. That is not the same as hardware verification, and the reports say so.
Every change required by the licence is recorded in MODIFICATIONS.md, with the files each one touched.
Where it is now. Work is ongoing and the source is current as of 11 September 2026. The most recent additions are smooth skinning and GLB actor conversion, correct handling of legacy BSP texture layouts and colour-key transparency, and fixed-width model records so files written on a 64-bit machine can be read back.
There is no binary to download yet. The licence requires the original animated Genesis3D logo to play first at startup, and that is not wired up. Until it is, the honest thing is to ship source and not a build. Clone it and compile it.
Why bring it back?
I found Genesis3D because I wanted to change an old game. I expected a small side project; instead I found an engine stranded on the wrong side of decades of Windows and hardware changes. The source was still there, but on a modern Linux computer it was history you could read, not software you could simply run.
With help from Claude, Gemini and Codex, I built a native Linux port and got the old engine running again. I did not create Genesis3D, and the port is not a new game. It is a bridge back to something that was nearly lost.
This is a non-commercial public project, built by Kadaken with help from Claude, Gemini and Codex. There are no outside contributors to the Linux port yet. The source is public so curious people can study it, test it, improve it and perhaps make something unexpected with it.
Sources and credit
This account is based on the preserved Genesis3D source and history, contemporary reporting on WildTangent's 1999 acquisition, and the MobyGames Genesis3D catalogue. The named games and their assets are not included in or licensed by this port.
Original engine code and inherited modifications remain copyright their respective contributors. Linux port modifications by Kadaken, 2026, with assistance from Claude, Gemini and Codex. Distributed under the Genesis3D Public License v1.01. No affiliation with or endorsement by the original companies or game owners is claimed.