A Modular Rendering System For ioquake3 Engine

Posted by Michael Larabel on August 03, 2011

The ioquake3 game engine, the open-source project built around id Software's Quake 3 engine release and is used by a number of multi-platform games, has its rendering system now modularized.

The ioquake3 project has long had asspirations to move to a modular rendering system (see this Wiki page from last uear) in order to modernize this Quake 3 engine adaptation while maintaining compatibility with original Quake 3 content. In particular, developers are interested in modernizing the graphics and content capabilities.

The ioquake3 engine currently uses OpenGL 1/2 rendering, but not OpenGL 3.x, and due to the renderer's design it's not able to offload all duties to the GPU. Making ioquake3 renderers swappable would allow those with modern hardware to take advantage of a modern renderer that can take advantage of modern graphics processor capabilities while still maintaining compatibility with the rest of the engine. For those with vintage hardware, the traditional renderer still can be used. Modularizing the renderer is also good for the mobile front with bringing ioquake3 to mobile devices via OpenGL ES.

As part of the modular design, it's also been sought after to make ioquake3 support more modern model/animation formats, but again, not to lose any old support.

Within the Wiki are also numerous mentions of the XreaL project and possibly integrating some of their engine advancements into ioquake3.

The news today though is not that all of this work is now completed and ioquake3 is on par with modern renderers, but just that the graphics renderer has been modularized.

Committed to the ioquake3 SVN via rev 2112 (and rev 2113) is the modular rendering system now in mainline. This modular rendering system has been in development since last November and can be found via this BugZilla entry for its history. There isn't any other renderers available at this time, but the support is now there to plug them in.

There may be an OpenGL 3.x renderer ready soon, as merging this patch was talked about since last February when a developer was originally working on replacing ioquake3's old OpenGL calls with that of OpenGL 2.1 + extensions, but then decided it's easier to just target OpenGL 3.0 instead.

Quakecon, the annual id Software LAN party and gaming event, is starting tomorrow in Texas and will be going through the 7th of August. It's possible that this week there may be the release of the Quake 4 / id Tech 4 engine source-code just as id Software has done in the past.

Id Tech 4 is seven-year-old technology now and id Software is prepping id Tech 5. John Carmack previously said id Tech 4 code would be opened upon the release of Rage, which is coming up shortly. This week we may have that code or at least some other interesting announcements out of the company. Compared to id Tech 3, the id Tech 4 engine is largely rewritten in C++ and offers noticeably better graphics capabilities.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. GCC 4.8.0 vs. LLVM Clang 3.3 Compiler Performance
  2. Intel Linux OpenGL Driver Leading Over Apple OS X
  3. The Cost Of Ubuntu Disk Encryption
  4. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
Latest Linux News
  1. A New X.Org-Free Wayland LiveCD Released
  2. Unity 8, Mir Made Progress This Week On Features
  3. LLVM Clang 3.3 RC2 Is Ready For Testing
  4. AMD RadeonSI Gallium3D Begins Simple CL Demos
  5. Intel Shows Off GNOME3-Based Tizen Shell
  6. Linux Desktop Security Could Be A Whole Lot Better
  7. KDE 4.11 Will Be The Last Major KDE4 Workspaces Feature Release
  8. New NVIDIA Linux Driver Supports The GeForce GTX 780
  9. Chrome 28 To Offer More Speed Improvements
  10. Digia Announces "Boot To Qt" Project
  11. X.Org Libraries Hit By Round Of Security Issues
Latest Forum Talk
  1. Debian GNU/Hurd 2013 Release Brings New Packages
  2. AMD RadeonSI Gallium3D Begins Simple CL Demos
  3. GCC 4.8.0 vs. LLVM Clang 3.3 Compiler Performance
  4. Steam: No used games...
  5. KDE 4.11 Will Be The Last Major KDE4 Workspaces...
  6. Linux Desktop Security Could Be A Whole Lot Better
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite