A look at Metabyte's Wicked3D MiniGL released 11 August 1999

Thursday, August 19, 1999

Metabyte is known primarily as a software company, producing drivers for some hardware manufacturers. They also produced their version of 3dfx Interactive's Voodoo2-based board, the Wicked3D Voodoo2 some time back.

Recently they came out with their version of 3dfx's MiniGL.

What's a MiniGL? A relative of the actress, Minnie Driver? Er, erm...
A MiniGL is a driver used to accelerate certain games like Quake2, Kingpin and Half-Life, as examples, in OpenGL hardware mode. A MiniGL is also a "truncated" version of a full-blown OpenGL Installable Client Driver (ICD). It contains only a sub-set of all available OpenGL extensions and was created primarily to accelerate the above-mentioned games without the need for an ICD, containing only the "necessary" OpenGL extensions for such games. As such, it is not a "complete" driver - some of the mentioned games do have extensions that are not supported by the MiniGL. Take Kingpin for example. With the v1.1 patch, vertex arrays rendering was implemented. However, 3dfx's latest existing MiniGL, which is version 1.48, does not support this (specifically it does not have the compiled vertex array OpenGL extension - the base extension needed to support vertex arrays). Vertex arrays rendering is used to draw models/skins faster, especially important in on-line play.

Wicked3D's MiniGL
First of all, you can grab these drivers here. Secondly, my observations were with a Voodoo3 3000 AGP.

There are two options in installing this MiniGL - a Regular version, and a High Resolution Acceleration version. You are given a choice of installing either versions, with a list of games in the installer provided. This installer, however, did not include Kingpin. You can rectify that simply by installing the driver in the installer's list of games, go into that game's directory and copy and paste the driver "3dfxgl.dll" into Kingpin's main game directory (backup the existing "3dfxgl.dll" first, just in case). In all cases during installation, a backup of 3dfx's own MiniGL is created.

I am not going to provide any benchmarking datas in this article. The only "benchmark" I did was with Q3Testv1.08, and that was simply by comparing framerate figures as reported by the game by enabling the framerate counter (you can do this by typing at the console cg_drawfps 1), checking the figures at the exact same spot for each driver I'm running.

With regards to additional GL extensions that Wicked3D's MiniGL provided, the only really useful one is the one I mentioned - vertex arrays rendering is supported.

High Resolution Acceleration version
I installed this first before the Regular version (heck, the name alone prompted me to), using both Half-Life and Q3Testv1.08 as test-beds. Resolutions were 1280x960 for Half-Life and 1024x768 for Q3Test.

Half-Life
While I noticed no immediate image quality differences, further checking revealed one particular visual anomaly. Instead of putting this into words, look at the two screenshots below.
 
H-L 3dfx miniGL H-L w3d miniGL
3dfx MiniGL Wicked3D MiniGL

Wicked3D's High Resolution MiniGL simply did not render the vertical bars on the railing. Something's amiss here. Gameplay seems pretty smooth, almost similar to 3dfx's MiniGL, perhaps slightly faster framerates.

Q3TEST
To get Q3TEST to even look reasonable on the Voodoo3, I needed to choose (within Q3TEST's in-game menu) 32bit color depth and 32bit textures. I've no idea why this is so since neither is supported in hardware by the Voodoo3. Not choosing these two options resulted in a layer of fog-like effect over the entire scene - dull and faded describes it well. Also, I had set Texture Quality to its maximum (r_picmip 0), to see how well it handles the largest possible texture sizes (setting this to maximum means choosing 512x512 textures but on the Voodoo3, it's downsampled to 256x256 since that's the maximum it will handle). And remember to reset Texture Filter to Trilinear. Everytime you switch between drivers, Texture Quality and Texture Filter are reset to one notch less than maximum, and bilinear respectively.

While framerate received quite a jump (up to almost 40% in certain scenes), the visual and gameplay drawbacks were too great an influence. What I experienced:
1) consistent "stuttering" - this was not cured by my suggested "Sync every frame" solution posted on my News page dated 23 July. It, however, was cured by limiting your framerates to around 55fps (com_maxfps 55). This possibly has got something to do with my system. Many people do not experience stuttering at all whatever the driver or game configurations. Also this seems to work if you use 3dfx's ICD if the r_finish 1 didn't work for you.
2) visible texture seams - the "line" between applied textures is visible
3) flashing textures - literally. This is at random places within a scene
4) "cheesecloth" smoke effect - the reason 3dfx's Q3-compatible drivers with the ICD set out to get rid of. This is very apparent here.
5) clipped explosions on surfaces - again, 3dfx's Q3-compatible drivers fixed this, but is apparent here.
6) stutter while going through portal in map Q3Test1 - this is almost not apparent when you test this as a server yourself but is very apparent when you're on-line as a client with a ping that's more than 200ms

There are other things like not being able to do a viewlog 1 (basically means switching the game to view the little windowed start-up on launching Q3Test). The game would hang. I have not tested many other cvars too.

Bottom line is I won't touch this High Resolution Acceleration MiniGL. It's just not very good.

Regular Version
Now, this seemed to be quite a bit better than the High Resolution version. Half-Life no longer exhibited the anomaly as seen in the above pics. It ran smooth too, possibly very slightly faster (not nearly enough to be noticeable in actual gameplay, really). This is good.

Q3TEST still has the stutter but to a much lesser extent than experienced with the High Resolution Acceleration MiniGL (the above "fix" still worked, however, in absolutely getting rid of stuttering) and all the rest of the above anomalies still persisted. Framerates still showed almost 40% increase. This is not only good, it's amazing to me. Take a look at these screenshots and notice the framerate counter in the top-right of the image. All settings were identical in both images' cases. VSYNC was enabled.
 
 
Q3 3dfx miniGL Q3 W3D miniGL
3dfx MiniGL Wicked3D MiniGL

I have no idea, however, why the Wicked3D screenshot above (taken with Hypersnap) showed the dull and faded effect I mentioned earlier. 32bit color depth and textures were set for the shots. It does not look like this in the game actually. Perhaps it's something to do with some incompatibilities between Wicked3D's MiniGL and Hypersnap's advanced filtering method of taking screenshots on a Voodoo3.

Bottom line (again) on this Regular MiniGL is...mixed. While I would have no reservations running this Regular version on Quake2, Kingpin or Half-Life, I am still undecided on Q3Test. I am one of those that lurve good image quality. The amazing performance improvement might eventually win me over, however, since performance considerations for such a hardware intensive game take over in this on-line only game.

So...is it better than Coke?
This is by no means an in-depth look. Nor a review. It was a Done-Real-Quick jobbie J. It is just me documenting my findings on a subject which I find have generated quite a bit of a controversy.

I have always had my reservations about 3dfx's MiniGL. While it afforded fast and smooth gameplay, I had always wondered if things could be better in terms of performance or visuals, or more importantly, whether I'm missing out "on the real thing" - missing OpenGL extensions. A very well known game developer/programmer (which I'll not mention the name, ahem) even called it "tantamount to cheating". I wouldn't use such strong words myself but I would have to say that with whatever little programming knowledge I have,I would not call it that...3dfx did what was needed to get their hardware running as best they could. That is not cheating, nor laziness. Just (admittance of) knowledge of their hardware and software limitations. It is not something I prefer nor like but until the recently-released Quake3-compatible driver set which included an ICD, all gamers were stuck with it.

Wicked3D have done a good job with this creation - the Regular MiniGL, that is, not the High Resolution one. For the performance increase alone in Q3Test I would recommend it over 3dfx's ICD (I can now play on-line at 1024x768 with reasonably fast performance, not 800x600 anymore!! And my system is no slouch). I do however advise those that treasure image quality to give this one a miss. It is of lesser quality in this regard compared to 3dfx's ICD - in Q3Test, that is. Other games seem to run and look comparably well with either Wicked3D's or 3dfx's MiniGLs. Whether the speed up in Q3Test is because of the visual defects exhibited is something best left to conjecture.

I should end by mentioning that using third party software(s) is not recommended nor supported by 3dfx. Use at your own risk is the, er, common advice.

--
Article was written by Anthony 'Reverend' Tan and published at The PULPIT
14 August 1999

Copyright 1999 - All rights reserved Hilbert Hagedoorn

trans468x15.gif (182 bytes)