Info: All the Glide Wrappers for Unreal Tournament made by Rolf Neuberger.

All the Glide Wrappers are made by Rolf Neuberger, his website can be found here: Zeckensack's Glide Wrapper implements and emulates the 3dfx Voodoo cards' native Glide2 and Glide3 APIs on top of OpenGL, and supports a lot of games written for Glide and that included Unreal Tournament. Obviously you should install the latest version which can be found on top of the page. Below that are the older available versions.

Glide Wrappers  

GlideWrapper084c.exe Latest Version  
GlideWrapper084c.exe Details

Changes: version 0.84c posted Jun-19-2005 vs version 0.84b posted Jun-03-2005

the Glide 3 FOGCOORD extension now works properly on the R200 tier1 path (previously there was no fog in Glide64)
fix (rare, corner case) chroma keying glitches on the tier2 path (regression; introduced with the tier0 chroma stuff in 0.84b)
work around a vertex program compiler issue in DeltaChrome drivers. This fixes the instant crash on startup. These cards still don't work well with this wrapper, though.
allow running the r200 tier1 path on S3 DeltaChrome. It supports the required extensions with recent drivers.
multi-user support workaround: store successfully expanded %appdata% values in HKCU portion of the registry. If the system later fails to expand the %appdata% string, this previous expansion will be used instead. This fixes configuration issues with "game launchers" that don't pass environment strings to their child process (e.g. Carmageddon 2).

GlideWrapper084b.exe Older Version  
GlideWrapper084b.exe Details

Changes: version 0.84b posted Jun-03-2005 vs version 0.84 posted May-19-2005

thrown out some debugging hacks for Motorhead that accidentally made it into the 0.84 release
fixed small resource leak in ARB_fp path (two shaders lost on close/reopen)
fixed a depth test state issue (affected Glide64 with Quake and F-Zero X; regression)
fixed discoloration of RGB332 textures
added limited chroma keying support in both tier0 paths (R100 and NV10). This will only work with paletted textures.
improved message pump behaviour for "Use render thread" and "One thread for both" thread policies. This resolves the stuttering in Need For Speed 2SE.
added a secondary method to close the rendering window if DestroyWindow fails (Win32 design flaw). This fixes the issues with the fullscreen toggle in Project64/Glide64.
added support for pure depth buffer writes (fix for an unreleased Glide64 version)
now use depth textures for depth buffer writes when in tier2 mode (fixes semi-transparent car interior in Test Drive 4 when using anti-aliasing)
implemented palette/ncc look-aside buffers for a small performance boost (e.g. Unreal Engine games)

GlideWrapper084.exe Older Version  
GlideWrapper084.exe Details

Changes: version 0.84 posted May-19-2005 vs version 0.82b posted Dec-30-2004

core: recycled textures now always have the correct filter and clamp modes applied (manifested as grainy textures in Ultima IX, Tribes, and other games with high recycler activity)
core: the fog table is now preserved and reapplied properly across ALT+TAB (affected Ultima IX)
core: mulibase textures are now properly mipmapped (fixes texture shimmering in Powerslide)
core: plugged a memory leak where the list of supported display modes could be produced multiple times
core: client alpha usage detection now properly takes additive blending into account (fixes disappearing text in To Be Continued demo when running a tier 1 path)
core: clip rectangle state is now resolved in the frontend. This fixes corruption in Driver when using threaded rendering
core: a number of bugs in tier 2 shader code generation have been fixed thanks to strong syntax checks in GCC :-)
core: support for streaming stores (MOVNTQ) is properly detected on Athlon (non-XP, non-64) processors again
Glide3: line strips from contiguous vertex arrays are no longer garbage (SDK Test 31)
Glide3: no longer use a precedence rule if both "packed rgba" and floating point per-vertex colors are enabled. Instead use whichever was specified last. This appears to be the way it's supposed to be (as seen in SDK Test 31)
Glide3: fixed aspect ratio/lod handling during 3df file parsing (crashed several Glide3 SDK tests)
confer: profile list sorting is no longer case-dependent
confer: renaming a profile no longer causes unwanted profile switching after making a change
install: fixed a problem with handling the "don't create Start menu entries" option that previously resulted in a harmless, silent error (might have caused an event log entry or whatnot)
lfb subsystem improvements:
automatically release read locks on buffer swaps. This works around an issue with MDK, where saving multiple times in a single session would crash the game. MDK never releases its read locks, which is clearly a bug in the game.
the wrapper can now automatically select and adapt to the current graphics card's preferred readback format. Radeon cards <=9250 benefit the most; raw readback performance doubles on these cards.
framebuffer downfiltering (for lfb reads in high res modes) is now done in hardware. This is much faster because the number of pixels that must travel back over the bus is quartered. Any upside-down flipping will also be handled at the same time for better bandwidth efficiency on the CPU side.
the pixel format converter used for readbacks now use prefetching for a further small performance boost
split the color lfb into separate read and write buffers. This allows still being able to detect which pixels have been modified by a lock, and which ones were untouched, instead of falling back to the assumption that the whole buffer might have been modified. This is both faster and nicer, as only modified pixels will be written back and (in high-res mode) unmodified pixel quads will not be replaced by their downfiltered version.
E.g. in Outlaws, using earlier wrapper versions, toggling on the map overlay would reduce effective color depth from 24 bits to 16 bits; when in high-res mode, you'd also end up with 2x2 supersampling instead of true 2x2 increased resolution.
Not anymore. Full resolution and color quality is maintained.
pure color buffer clears, when restricted to a small scissor region, will now be handled by the lfb subsystem. This prevents flushing of write buffers on multiple write locks interrupted by clears. MDK is probably the only game that benefits at all from this. Its performance index shows a 2.5x speedup from this optimization alone. This qualifies as an app specific driver cheat :-)
avoid clearing the whole write buffer with the "magic color" and instead clear only modified tiles, if possible. This can save CPU cycles and memory bandwidth when only small portions of the locked region have been modified (which is quite common outside of fullscreen video playback).
Reworked installation for proper multi-user support and full functionality on restricted user accounts on NTFS volumes. Nothing changed for Win9x, but the following takes effect on Windows 2000 and Windows XP:
the installer/uninstaller will now complain and exit early when started without admin rights
the premade config, if installed, now serves as a read-only template. Every user who uses Glide (or uses the confer), including the administrator, will automatically get a private copy of this first thing in the morning, and will not be able to modify other users' settings
This fixes the following issues seen in previous version on Windows 2000 or XP:
when installed by an admin, restricted users could not save any configuration changes (RUs can't modify admin-owned files)
when installed by a restricted user, the premade config could not be used (RUs can't write registry entries in the HKLM tree, so the core DLLs didn't know where to look for the config)
when installed by an admin, the uninstaller could be executed by a restricted user but would not work (RUs can't delete admin-owned files)
when installed by a restricted user, uninstallation wouldn't work at all (install dir is stored in/pulled from HKLM tree where RUs can't write)
On the downside this will leave the private configs on the system after uninstallation (in %userpath%\application data\).
added code to prevent running the Radeon 7xxx tier 0 path on Radeon models >=8500 and <=9250, due to extreme backward compatibility issues in current drivers. Bump up to tier 1 instead.
If you've ever wondered what's wrong with "basic stuff only" on these cards, let me just say that it *does not* look like that when run on real first-generation Radeons. Not even remotely.
adjusted tier2 chroma keying code. Fixes gaps in Red Baron 3D cockpit, solves Speedbusters issues on Radeon 9500+, corrects cursor outline in Tribes and potentially other similar glitches.
made Glide3 grGetString more consistent with the real thing
made NCC table handling consistent with the real thing. Now always use the "packed data" representation of the NCC table
Updated 3df loader to generate this stuff
made the texture object recycler more effective
added "Always on" vsync option as requested and also threw in the "Frame limiter" option
added new thread policy "One thread for both"
added configurator tooltips, capitalized item names as requested, other minor cosmetic changes
the confer can now detect DLLs with higher search priority (in %windir%\system32) and throw an appropriate warning. This was previously handled with the popular "The wrapper's glide2x.dll is missing" error and caused lots of confusion.
added the Delete profile button

GlideWrapper082b.exe Older Version  
GlideWrapper082b.exe Details

Changes: version 0.82b posted Dec-30-2004 vs version 0.82 posted Dec-21-2004

core: fixed the (new) mouse issues in Diablo 2 and Carmageddon 2 that have been introduced with 0.82. Oh well ...
core: hardened against race conditions. Fixes the crash when ending emulation in Project64 (w F12) in conjunction with the "use render thread" thread policy.
core: converted mipmap generation code from C to MMX assembly (2~4 times faster)
core: no longer unlatch all state for buffer clears. This avoids texture/palette cache thrashing (very small performance increase)
configurator: renamed "hard to explain" thread policy to the more logical "use system thread"

GlideWrapper082.exe Older Version  
GlideWrapper082.exe Details

Changes: version 0.82 posted Dec-21-2004 vs version 0.80e posted Jul-21-2004

core bugfix: wrap around large lod bias values to keep them in the [-8;8) range (fixes texture blurriness in Boss Rally)
core bugfix: made timing compatible with non-constant processor clock speeds (Intel "SpeedStep", AMD "Cool'n'Quiet" and similar power saving techniques). This fixes the function of the "pedantic" vsync option and the scanline query on such systems.
core bugfix: now force point x/y coords to pixel centers to avoid filtering/smearing of point primitives during simultaneous read/write locks in high res mode. This is intended to fix bluriness in Jane's F15 cockpit views.
core: multithreading is here - also added the "thread policy" option to control it
core: rolled my own mipmap generation. All texture formats. This makes this option actually usable, from a performance point of view, for owners of ATI cards, and glitch-free for the NVIDIA camp, regardless of driver version. NOTE that now using "generate mipmaps" disables hardware palette support (NVIDIA only), and that will cost some performance.
core: disable the aniso workaround for Catalyst 4.9 (or newer). Catalyst 4.9 fixed the issue that required this workaround.
core: ignore the "allow_sse" option. The core DLLs now use an automatic (exception-catching based) detection instead.
core: quite unexplainable texture recycler tweaks
profile management changes:
a single profile can now apply to multiple executables, in the most common case to a game and some kind of supplemental setup tool (e.g. Wiz8.exe and 3DSetup.exe for Wizardry 8). This mainly helps to avoid clutter in the profile list.
there can now be distinct profiles for multiple executables that have the same name. The distinction is made by looking for other files in the exe's folder that are specific to a game. E.g. both Diablo 2's and Independence War's main executables are called "Game.exe" and couldn't be distinguished by previous versions of the wrapper (consequently there was no way to make separate profiles for the two). But other files in the same folder can be used for recognition.
NOTE that there's currently no user friendly way to work with this functionality yourself, it's only available through manual ini editing. The premade configuration uses it to cover a few cases.
configurator: can now rename profiles. Currently ASCII only, no support for unicode characters (e.g. Kanji)
configurator: as per core change, removed the "allow SSE" option from the user interface.

GlideWrapper080e.exe Older Version  
GlideWrapper080e.exe Details

Changes: version 0.80e posted Jul-21-2004 vs version 0.80d posted Jun-25-2004

core bugfix: large RGB332 textures don't crash anymore (affected Gex3D; regression from 0.78b)
Glide2 bugfix: polygons are properly split across multiple vertex buffers again (affected all Unreal engine based titles; regression from 0.80c)
Glide3 bugfix: the "EXT_FOGCOORD" fog mode now actually works (affected Heli Heroes)
usability bugfix: executable names starting with a number no longer produce multiple profiles, and can be configured properly again (regression from 0.78b)
chroma keying changes in R200 path (fixes garbled menu in ManxTT Superbike)
the gamma ramp is now reapplied after ALT-TAB task switching
scaled up point size in high res mode
added a workaround for ATI's aniso issue (autodetected at runtime)
lots of multithreading framework stuff ...

GlideWrapper080d.exe Older Version  
GlideWrapper080d.exe Details

Changes: version 0.80d posted Jun-25-2004 vs version 0.80c posted Jun-20-2004

Glide3 bugfix: polygon/fan tesselation no longer clobbers the (client supplied) list of vertex pointers (affected ePSXe w Lewpy's Glide plugin)
readded redundant ShowWindow call (mysteriously brings back sound to Dethkarz)

GlideWrapper080c.exe Older Version  
GlideWrapper080c.exe Details

Changes: version 0.80c posted Jun-25-2004 vs version 0.80b posted Jun-24-2004

Use EXT_blend_func_separate functionality only if the driver exposes the extension. It's a core feature in GL1.4, but using it on Geforce <=4 cards forces software rendering ...
This was a regression from 0.78

GlideWrapper080b.exe Older Version  
GlideWrapper080b.exe Details

Changes: version 0.80b posted Jun-24-2004 vs version 0.80 posted Jun-20-2004

core changes (these affect both Glide2 and Glide3):
bugfix: the clip window can no longer "wrap around" the screen
bugfix: "z" type depth is no longer garbage in base x86 path
bullet proofing: games no longer cause crashes if they temporarily deactivate the Glide window and lock a buffer during that time
updated installer script to put the DLLs into \WinNT instead of \WinNT\system32 (\Windows instead of \Windows\system on Win9x). If you install over a previous versions, the old DLLs will be automatically deleted from the system directory (only if they are identified as "mine").
Glide 2
improved "malformed vertex" handling. Fixes issues with the mouse cursor and map overlay in Dethkarz
Glide 3
bugfix: separate vertex alpha in 3DNow! path is no longer converted to garbage (affected eVoodoo 2.6)
bugfix: separate vertex alpha in base x86 path no longer crashes (affected eVoodoo 2.6)
bugfix: line strips no longer produce an extra random line segment
added support for TEXMIRROR extension

GlideWrapper080.exe Older Version  
GlideWrapper080.exe Details

Changes: version 0.80 posted Jun-20-2004 vs version 0.78b posted Mar-05-2004

core changes (these affect both Glide2 and Glide3):
bugfix: no longer lose hardware palette during close/reopen sequence (affected: Outlaws on Geforce line after accessing game options)
regression fix for Tarzan's pink intro video issue
bullet proofing: applications no longer crash when attempting buffer locks too early (general protection fault with invalid read at adress 0x0000000C)
bullet proofing: applications no longer crash when attempting to download textures too early
bullet proofing: early-out on polygons, strips and fans with less than 3 vertices (fixes a crash in Operation Flashpoint)
bugfix: automatic mipmap generation can no longer be enabled without the driver supporting the relevant extension
now support multibase texturing (fixes garbled textures in Powerslide)
another update to gamma handling. Should now properly restore desktop gamma on exit, regardless of driver version, as long as the game shuts down gracefully.
another small change to "force trilinear" and "force mipmaps" behaviour. I now leave alone all textures that must be unfiltered for certain effects to work correctly (namely chroma keying and alpha test)
now install a message filter into client windows to prevent oddities (window sizing, mouse cursor positions, etc)
no longer move/resize the client window at all ...
overhauled resolution enumeration and switching. Now uses the same consolidated code for Glide2 and Glide3.
~50% improved framebuffer readback performance in high res mode (affects Outlaws map overlay, Carnivores sun glare effect, etc)
lots of changes to fog emulation. Table fog will have nicer interpolation behaviour now, we no longer need EXT_fog_coord and vertex preprocessing is simplified. This will make it a lot easier to support a broader range of graphics hardware ...
added (untested) support for Wildcat VP cards :-)
These can now run on a slightly modified NV2x (tier1) codepath. This has only been tested on a Geforce 3 -- I actually just bought a Wildcat VP but it's still in the mail
now use vertex shaders (if available) to enable more compact vertex layouts and minimize software preprocessing
now convert ALPHA_INTENSITY44 textures to RGBA4444 instead of INTENSITY_ALPHA_88. Same footprint, slightly better decoding speed, reduces pressure on texture recycler and it's a "native" texture format for more cards
now convert RGB332 textures to RGB565. same reasons
done away with the whole "garbage collector" concept and instead overhauled the "recycler". Good for KQ8 and Diablo 2, bad for Tribes 1 (see respective notes)
numerous other small changes I forgot to mark down
Glide 2 related changes
added full software clipping. Sheesh ...
This was supposed to fix the issues in F1 and F1'97, but sadly it didn't.
Glide 3 related changes
bugfixed partial texture updates
added missing functionality:
depth buffer
triangle lists, line lists, line strips, point lists
gamma controls
a whole bunch of grGet queries
resolution queries
usability changes:
added and exposed anisotropic texture filtering controls
thrown away the "R300 line smooth workaround" configuration option. The need for this is now automatically determined at runtime
replaced the "allow float shaders" option with a "functionality limit", which is hopefully a little less confusing and more versatile. This also adds the ability to "deny service", so to speak.
added the ugly little "gamma helper" to restore desktop gamma after crashes
switched to NSIS2 installer for better compression
documentation cleanups

GlideWrapper078b.exe Older Version  
GlideWrapper078b.exe Details

Changes: version 0.78b posted Mar-05-2004 vs version 0.78, posted ... a couple hours earlier

changed mouse capture stuff a bit. The mouse will now work in Diablo 2 on Win2k and WinXP. Sorry 'bout that.
this also somehow fixed Carmageddon 2 :-)

GlideWrapper078.exe Older Version  
GlideWrapper078.exe Details

Changes: version 0.78 posted Mar-05-2004 vs version 0.76b, posted Feb-22-2004

bugfix: broken array bounds check in gu texture management (affected: Psygnosis's F1, F1 '97)
bugfix: unclean shutdown/restart sequence (memory leak)
bugfix: wrong timing information for 75Hz modes - it was 60Hz. Duh!
first release with Glide 3 support
added and exposed resolution limit and refresh rate controls
increased chroma keying precision in NV2x path (fixes some Diablo 2 glitches)
changed gamma handling - set gamma ramp for the render window, instead of the screen
use RGBA texture uploads instead of plain RGB. This is quite a bit faster on Radeon cards
added a "recycler" for textures thrown out of the cache due to collisions or garbage collection.
this makes life a little easier for the OpenGL driver (stabilizes performance in Diablo 2 and Tribes)
made emulation of the current scanline query for grSstVideoLine much more sensible (fixes Test Drive 4 menu flickering)
this was actually already in 0.76b but somehow wasn't mentioned in the changelog.
documentation fixes

GlideWrapper076b.exe Older Version  
GlideWrapper076b.exe Details

Changes: version 0.76b posted Feb-22-2004 vs version 0.76, posted Feb-07-2004

bugfix: color buffer write locks that didn't write anything have left some render states clobbered (affected: I-War)
bugfix: on Windows XP, the client window could move partly offscreen, making menus inaccessible (affected: UltraHLE)
now advertises 4MB framebuffer memory (enables resolutions above 640x480 in a few more games, such as I-War)
hack: write locks to the depth buffer are still not supported, but they will now trigger a depth buffer clear. This behaviour is *wrong* but it fixes Croc's intro sequence, and no other game I know of uses pure depth buffer write locks anyway.
added support for hardware palette decompression (saves video memory on Geforce series)
more restructuring for moving towards Diablo 2/Glide3 support

GlideWrapper076.exe Older Version  
GlideWrapper076.exe Details

Changes: version 0.76 posted Feb-07-2004 vs version 0.74, posted Sep-11-2003

bugfix: texture memory updates may fail to update all overlapped textures (no known affected applications)
implemented "high res" mode and exposed it
LFB writebacks are now tile based (MDK performance index up from 170 to 270)
also assign low texture priority to lfb buffers (encourages AGP texturing, frees local memory on lower end boards)
reimplemented vertex preprocessing to be fully modular, to ease transition to Glide3 support
various mouse and window handling fixes
another small fix to mouse cursor visibility (removes system mouse cursor from JSF menu screen)
redirect all mouse input to client window (enables mouse controls in Red Baron 3D, King's Quest 8: Mask of Eternity)
handle WM_SETCURSOR messages to avoid the Windows "ding" sound on mouse clicks
move client window to "NOTOPMOST" instead of "BOTTOM" (Red Baron 3D is no longer lost in the background after exiting flight; similar for UltraHLE)
tweaked client window resizing to make Red Baron 3D mouse cursor correctly 'hit' menu buttons

render window no longer shows up in the systray or the ALT+TAB task switcher
increased maximum selectable texture memory from 8MB to 16MB
bumped up subpixel precision - previously 4 bits, now >=11 bits
extensive gold plating
"shader optimizer" :-) - conserves effective fillrate
lots of smaller bug fixes and stability improvements
various efficiency tweaks

GlideWrapper074.exe Older Version  
GlideWrapper074.exe Details

Changes: version 0.74 posted Sep-11-2003 vs version 0.70beta, posted Aug-19-2003

Complete rewrite of all things LFB
Much better performance, especially on Radeon line (MDK performance index 40 -> 150)
Handles simultaneous read and write locks to the same buffer (fixes Outlaws menu issue)
Can now transfer multiplexed depth/color data (Test Drive 4 car interior)
Can blend/alpha test/depth test lfb transfers
fixed texture format precision issue with chroma keying (Ultima IX, Rayman 2, Red Baron 3D on R300)
fixed broken alpha/intensity44 texture converter (texture corruption, possible GPF; Dethkarz)
fixed clip window off-by-one issue (MDK health bars, jump sequence)
mangle w buffer clear values to match geometry depth (fixes Dethkarz "where am I?" issue)
replace GL polygon offset with per-vertex processing and clamp
make depth bias non-linear when w buffering (fixes most of Ultima IX z fighting)
found and removed even more CMOVs (K6 compatibility, as promised last time ...)
fix "aitrgb" bug (but not a single game uses it?)
added ARB_fragment_program target and exposed it
added and exposed "r300 line smooth workaround"
fixed indexed polygons having their last vertex shredded to bits
corrected wrong texture format size information
added missing z fog support
the configurator now displays the core library release version
made "force trilinear" a little stronger; it will now also replace point sampling with a linear base filter
now support MULT2 multipass fog mode in all paths (duh ... black!)
fix missing output inversion in R200 path

Please help us, by reporting dead, broken or wrong links: