Unvanquished Is Rewriting, Modernizing The Quake 3 Engine

Written by Michael Larabel in Linux Gaming on 15 September 2013 at 04:52 PM EDT. 45 Comments
LINUX GAMING
The Unvanquished open-source game is one of the most fascinating open-source game projects as they've strived for fundamental improvements in the ioquake3 engine and also to deliver high quality art assets and in-game content. Unvanquished is powered by the Daemon Engine, which is derived from the ioquake3 engine at its core -- the open-source version of id's Quake III engine. With the original code being the better part of two decades old, the developers are seeking to modernize and rewrite the code-base.

While there's the open-source Doom 3 engine available and other more modern game engine code-bases, Unvanquished developers aren't looking to abandon ioquake3 but rather modernize it and gradually rewrite it so that it's more competitive with modern game engines. Aside from being able to offer more modern game features, they hope the modernizing of ioquake3 will lead to more developers joining the open-source project.

Unvanquished's engine has already received features like an OpenGL 3.x renderer through the ET-XReaL engine modifications to ioquake3 and other more modern features added to ioquake3, but the code-base is said to be building up to a gigantic mess.

The developers plan to incrementally rewrite the entire game engine from the base framework so that it can better scale to handle proper multi-threading. In the process they are also switching from compiling the code-base as C89 to turning it into a C++11 code-base. While doing all of these changes, they hope to maintain game compatibility for better testing and a smoother transition to their "new" engine.

When it comes to virtual machines for handling the game logic, the original Quake 3 system is still in use but Unvanquished wants to switch over to using Google's Portable Native Client (PNaCL) to compile C/C++ into LLVM bytecode that is then compiled at runtime in a sandboxed environment.

In terms of where Unvanquished developers are at right now, they have a new "engine-upgrade" branch where they are focusing on making the engine compile and work in C++, which so far is fully functional.

More details on this interesting work can be found via the Unvanquished Blog.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week