____Overview TitaniumGL is a driver architecture (currently, under Windows, an opengl to direct3d wrapper, on other OS-es, a multicore software render).
Project's goal is to support OpenGL on graphics cards with broken/bad or missing OpenGL drivers.

TitaniumGL is available for Windows, FreeBSD, and ReactOS.
Under Windows,
TitaniumGL emulates the OpenGL functionality with full hardware 3d acceleration, based on directx and your GPU.

___ Community

Under Linux, BSD and ReactOS, TitaniumGL emulates the graphics card with CPU cores.
TitaniumGL is also compatible with nvidia's 3d vision (native stereo display).

TitaniumGL for Windows is ideal, if you are not able to install graphics drivers from your graphics card manufacturer, and you must use the the built-in windows drivers on your computer, that has 3d but, has no OpenGL acceleration.

TitaniumGL for Windows is compatible with Windows 98, Windows 98 SE, Windows ME, Windows 2000, Windows 2003, Windows XP, Windows Vista, 7, 8, and 8.1.

To use hardware accelerated TitaniumGL for Windows, you may need the latest DirectX 9 and DirectX compatible drivers to your graphics card, wich is mostly included and installed in your Windows. If not, download them, and install DirectX from Microsoft's webpage.

Please note #1: DO NOT COPY TITANIUMGL TO YOUR WINDOWS DIRECTORY (unless, you know what are you doing!)
To use, you should copy the dll to the directory of your game's executable file, then simply start the game. No installation needed!

Please note #2: To install TitaniumGL for FreeBSD, you must overwrite libGL.so.1 in your system with TitaniumGL's graphics driver. You may backup the original file. Read the readme.txt, before you do anything. If glxinfo renderer string says ,,TitaniumGL'', the installation was succesfull.


Maker3D: Create your own 3D RPG!
Click here to download.

Geri's chess - ray traced game with
multi-threaded chess AI!




2015, 03.

-Added beta ARM binaries (nofpu, vfp and vf3 compatibility).
-Added 5x86 linux binaries for legacy CPU-s


2014, 01.

-Driver released (well a few days still left until 2014, whatever).
-Added mip-mapping support for the software renderer
-5-25% generic performance gain
-Fixed some ,,dotting'' bugs with the software renderer
-Fixed some segmentation fault bugs (texture upload forgot to lock rendering...)
-Fixed a memory-pool related crash on linux
-32 bit binary now compiled again with i686 flag
-Software renderer now supports up to 128 threads instead of 24


2013, 12.

-Voodoo Rampage/Specter 1000/2000 is now supported and working.


2013, 08.

-A new hardware rendered version released with better Windows9x compatibility, for legacy computers
-Software rendered version now runs on win9x too
-TitaniumGL software renderer now uses packet-based out-of-order rendering
-Software rendered version can now utilize up to 24 cores.
-TitaniumGL now uses smaller memory stack
-1.5x-2x speed-up in the software renderer when using 4 core computers


2012, 03.

-Finally, the linux version is released!
-Changed memory management: faster memory access
-Some potential double-free memory corruption bugs fixed


2011, 12.

-Automatic mipmap generation has been added
-Automatic aniso filtering has been added
-Interlaved arrays DONT force texturing to enabled, this was a mistake
-Now, max number of display list incrased to 5000
-glIsTexture returned broken result if tex id was 0

Older versions:

2011, 11.

-Z test is now disabled by default as the specification says
-Binded texture number is 0 again by default
-Fixed the handling of the multitexture combiners
-Tesselator algorythm is optimised (+30% speed-up)
-Texture 0 can now properly handle textures (at last i hope so)
-glGet on GL_ACTIVE_TEXTURE or GL_MAX_3D_TEXTURE_SIZE_EXT did disasterous things
-glFrustum now can be used on texture matrix
-Interlaved arrays now force texturing to enabled
-From now, some ogl 1.2 and 1.3 EXT functions can be requested without the EXT or ARB post-tag


2011, 09.

-FreeBSD alpha (first test release) is released
-ReactOS alpha (first test release) is released


2011, 06.

-Removed a small memory leak in display list creation
-Matrix stack depth was only 62 instead of 64
-Texture matrix stack depth was 2 instead of 4
-Fixed glGet with GL_TEXTURE_2D
-Semi-functioning TexGen stub added
-Added fake sphere and cube mapping
-glRasterPos2f display list encoding was broken
-glrotate/glscale/gltranslate/glmaterial display list encoding was broken
-Some texenv was not properly stored in the texture
-Default selected texture on TMU0 is now 1
-Permedia cards working again


2011, 05.

-Extension added: GL_ARB_map_buffer_range
-Extension added: GL_OES_matrix_get
-Color buffer writemask support has been added
-Speed-up around matrix calculations
-Thread handle leaking fixed
-Strange protch has been fixed in windowed rendering
-Number of acessible TMU's incared from 3 to 4
-Added a bounch of missing texture formats, like 4_4_4_4, 10_10_10_2, etc...
-Added fixed-point support
-Added experimental OpenGL ES 1.x support and ES context creation
-glPushAttrib was broken
-Fixed some bugs with Tuxracer
-Fixed some bugs in Tuxkart
-Default variables around light handling was broken
-Fixed missing colors with porrasturvat
-Fixed crash with stepmania
-Some fixes around lighting and material handling
-Fixed display list drawing when texturing is disabled
-Improved multi-cpu support
-Added some missing parameters to glGet
-Added some missing caps to glIsEnabled
-Improved SEGFAULT protection in VBO data mapper
-Added multisampling support under linux
-Scissoring now affects clear
-Big data blocks can now processed on multiple cpu cores
-Default viewport is fixed with SDL's buggy window init
-A small speed improvement in vertex processing
-A matrix calculation bug fixed with some complex matrixes
-Direct access to Directx's Hardware T&L pipeline in some situations
-Texture loading time improved for big textures.
-Perspective vertex flickering fixed
-Around total 50-300% speed-up.


2010, 11.

-Extension added: GL_OES_byte_coordinates
-Extension added: GL_ATI_meminfo
-Extension added: GL_EXT_texture_edge_clamp
-2x-3x speed up with fullscreen rendering with some older graphics cards.
-Secondary and third texture pipeline was corrupt in some cases with vertex array or vbo
-Recursive display list handling was broken
-Display list command compatibility was extended
-UV was broken with display lists with secondary and third texture pipeline
-Default precisity of the perspective correction is incrased
-Fixed a backbuffer creation issue
-LINE and POINT drawing code changed, now line and point sizes are supported
-2d bitmap framebuffer-draw moving has been fixed
-Scissor testing is now a bit faster
-Vertex UB color array fixed
-Fixed some clamping issues
-Fixed texture size issue with graphics cards with more than 2 gbyte vram


2010, 09.

-Array'a normal pointer was ignored if type wasnt float
-glWindowPos was missing
-Copying texture image to system ram was missing
-Some texture handling function was not initialised
properly, mading segfault possible in some cases
-interleaved data input is now accepted
-VBO is now created even if incoming parameters are NULL
-Geometry with Quad strips was corrupt
-In windowed rendering it was a too big protch on
the top of window
-now, 16-bit only 3d vga-s also can be used with 32-bit only games
-Transposed matrix function pointers was broken
-Texture-loss fixed with S3 Trio3D and Permedia2
-Client attrib bits was broken (fixed tuxkart and torcs)
-Fixed some alpha-bugs


2010, 06.

-Folowing extensions added:
-The code is now compiled in 6x86 mode as default.
-DLL imagebase modifyed.
-Scissor test has been fixed in D3D mode.
-Driver now can handle up to cpu cores.

WARNING: The author does not possess an OpenGL license from SGI, and makes no claim that TitaniumGL is in any way a compatible replacement for OpenGL or associated with SGI. USE AT YOUR OWN RISK.