We Rely On Your Support: Did you know that the hundreds of articles written on Phoronix each month are mostly authored by one individual working insane hours? Phoronix.com doesn't have a whole news room with unlimited resources and relies upon people reading our content without blocking ads and alternatively by people subscribing to Phoronix Premium for our ad-free service with other extra features. You can also consider a tip via PayPal.

After first being introduced on Windows years ago, and then FreeBSD
and ReactOS support added last year, this week finally marked the release of TitaniumGL
for Linux. TitaniumGL is self-described as a "freeware driver architecture"
and carries a goal to support OpenGL on graphics cards with broken, bad, or missing
OpenGL hardware drivers. Here are some benchmarks of TitaniumGL compared to NVIDIA's
binary GPU driver and the Mesa/Gallium3D LLVMpipe software rasterizer.

TitaniumGL was designed for implementing OpenGL on Windows, but
support was eventually added for ReactOS, FreeBSD, and then this week finally
came the Linux support. TitaniumGL on Windows attempts to implement OpenGL functionality
over Direct3D (i.e. translating OpenGL calls into Direct3D so that they can be
executed by a host driver, which is similar to a few other software projects out
there). This at least means GPU-based acceleration, but under Linux, BSD, and
ReactOS the TitaniumGL library basically comes down to being a software-based
rasterizer running on the CPU. However, TitaniumGL's GPU emulation on the CPU
is multi-threaded and the developer claims that it can also handle NVIDIA 3D Vision.

TitaniumGL has been around for a few years and is freeware, however,
it is not open-source. The Linux/BSD version of TitaniumGL simply ships as libGL.so.1,
which the developer says to overwrite the system's libGL OpenGL library. (Though
unless you are serious about this, you are better off just using LD_PRELOAD
to load the TitaniumGL library when desired.)

The TitanumGL multi-core software renderer right now only supports
OpenGL 1.4 across all platforms. There is OpenGL 1.4 with support for multi-texturing
(four emulated TMUs), Vertex Buffer Objects (VBOs), anti-aliasing, and other functionality.
It is a bit disappointing to see that even OpenGL 2.x is not even fully supported,
especially as even Mesa is implementing most of OpenGL 3.x these days. OpenGL
Shading Language (GLSL) support is also lacking from this alternative GL implementation.

Among the games that TitaniumGL is advertised as being compatible
with include Neverball, Half-Life, Quake 3, Jedi Academy, TORCS, Warcraft 3, and
"hundreds of other games."

TitaniumGL supports multi-threading up to four CPU cores for its
emulated OpenGL support. Somewhat surprising is that TitaniumGL is currently 32-bit
only. This does not make too much sense and within the Phoronix Forums, the developer
says that 64-bit support still will not come for a while. "There will be
64 bit version, once. but not in these months. i dont have so mutch time in these
days, i must care about different projects also." [sic]

A Phoronix reader develops TitaniumGL and the Linux version was
announced
on Wednesday in the Phoronix Forums. From there, you can also visit the TitaniumGL
web-site and see other information about this freeware driver architecture. Within
that Phoronix Forums thread, the developer also makes claims that the Linux graphics
API and X11 documentation is "simply useless" and that "the quality
of linux rendering infrastructures simply makes no sense."

Due to the lack of 64-bit support for TitaniumGL and rather than
messing around with the 32-bit libraries, a 32-bit installation of Ubuntu 12.04
LTS was used for this initial testing. When simply LD_PRELOAD'ing the
libGL.so.1 that ships as TitaniumGL, the multi-core software renderer was working.
The OpenGL version is advertised as 1.4 v2009-2012/3/08 and the
renderer as TitaniumGL/4 THREADs/SOFTWARE RENDERING/4 TMUs.

The mission at Phoronix since 2004 has centered around enriching the Linux hardware experience. In addition to supporting our site through advertisements, you can help by subscribing to Phoronix Premium. You can also use our Amazon.com or NewEgg.com shopping links when making online purchases or contribute to Phoronix through a PayPal tip.