Click  for Laptop Battery specials!
Click for Laptop Battery specials!


A Click on this Banner shows your site support to my Sponsors
Your Source for Performance News and Reviews!
Boost Your Voodoo2 Card Performance by 35%
Without Overclocking - For Free!
by Mike
7/05/99 (updated 7/6/99 for Shadows and Reader Feedback)

Note: If you're using 3dfx's Voodoo2 drivers, you must rename the Voodoo2.ini file to Voodoo2.var. Also note that Unreal v224 does not seem to work with any Voodoo2.ini/Voodoo2.var file as an error message results when trying to start the game. For a review of the 3Dfx Voodoo2 (including dual V2/SLI mode tests) and even Voodoo3 driver performance see my www.mac3dfx.com site sidebar links-Mike 7/18/99


It's not often that you get a 35% performance boost so free and easy, but that's exactly what I'm seeing with a 12MB 3Dfx Voodoo2 card (i.e. Game Wizard) after adding a Voodoo2.ini text file with tweaked PCI/Memory/Buffer settings into games like Quake and Quake 2 (see framerates test results below).

As I said in the July 3rd Saturday morning game news page when I first posted this, I feel stupid for not trying these before, as I noted some PC 3dfx settings in the 1997 Power3d (first Mac 3dfx voodoo1) graphics card review. What brought this to my attention was a thread posted last Friday in my 3Dfx Forums from a reader named Sergiusz that noted the PC voodoo2 Quake tweaks apparently work on the Mac as well. Here is a summary of his post:

" Just put a file named "voodoo2.ini" into the game application's folder. You can create it with SimpleText and it should contain only the following text:

[VOODOO2]
SSTV2_REFRESH_512x384=75
SSTV2_REFRESH_640x480=67
SSTV2_REFRESH_800x600=75
SSTV2_REFRESH_1024x768=75
SSTV2_GRXCLK=110
SSTV2_SWAP_EN_WAIT_ON_VSYNC=0
FX_GLIDE_SWAPINTERVAL=0
SSTV2_FASTMEM=1
SSTV2_FASTPCIRD=1

The line containing '...GRXCLK0110' is the clock speed of the voodoo car; here it is 110 (maximum, only working if a cooler is installed) [see my review of the Stealth Voodoo2 cooler-Mike] 90 MHZ is default. You can set the refresh rate even for each resolution!
Sergiusz "

[Update: The FastMem and FastPCI tweaks apparently have no effect on Mac performance, possibly due to the lack of Write Combining on the PCI bus on Macs. I saw no difference in tests with and without those commands.] Note: Voodoo1 card owners (Power3D, Monster 3D, etc.) can use the freeware 3DFx Tweaker utility to do basically the same thing but it does not work with Voodoo2 cards. VillageTronic includes a similar tweaker utility with the 8MB MacMagic voodoo1 card .


Glidehack Users: A reader wrote that Glidehack (util/extension for capturing screen, movies, and more) is apparently not compatible with the Voodoo2.ini tweaks.


Overclocking Warning: Since I had put the Stealth Voodoo2 cooler on a PC Voodoo2 card my framerates below include only the memory/PCI/Buffer tweaks - the card clock rate was still set to the default 90MHz. I still saw major performance gains. Without a cooler, even when used in the 9600 which has a large fan blowing on the PCI cards, 100Mhz would lock up the Game Wizard after only several minutes, and one cooled PC Voodoo2 I have will not even run 100Mhz - so overclocking is risky and not a sure thing even with a cooler. The Good News is that even without boosting the card clock speed the tweaks resulted in major gains in speed. All of the framerates below were run at the stock 90Mhz card clock speed.

Note: the following tables of framerate comparisons were from a Apple Blue and White G3/400, but I saw nearly identical gains (% wise) from a 9600/350 as well. Gains varied by demo map and gain, but were as high as 35%, an amazing improvement.


Quake 1 Performance

Mac Quake 2 Timedemo Scores
System
640x480
800x600
Demo No.
B&W G3 400
Voodoo2 12MB
(No Tweaks)
47.8 fps
47.1 fps
45.3 fps
31.0 fps
30.0 fps
30.1 fps
Demo 1
Demo 2
Demo 3
B&W G3 400
Voodoo2 12MB
(w/Tweaks
But No Overclock)
64.9 fps
63.0 fps
62.7 fps
40.4 fps
38.8 fps
38.6 fps
Demo 1
Demo 2
Demo 3



Quake2 Performance

Mac Quake 2 Timedemo Scores
System
640x480
800x600
Demo No.
B&W G3 400
Voodoo2 12MB
(No Tweaks)
36.6 fps
35.4 fps
29.2 fps
29.6 fps
Demo 1
Demo 2
B&W G3 400
Voodoo2 12MB
(w/Tweaks
But No Overclock)
41.7 fps
40.7 fps
34.8 fps
34.8 fps
Demo 1
Demo 2


Unreal showed a lot less gain from the Voodoo2.ini file. Less than 1fps (640x480) to 2.6 fps (800x600) here on my 9600/400 (overclocked 350 604e card) if I remember correctly. Remember to disable Glidehack if you are using it - as noted here and in the
Game News page it is not compatible with the settings in the Voodoo2.ini file.


To Download my Voodoo2.ini file (set to standard 90Mhz clock rate) - click here. If you modify this INI file for faster than stock speeds, you assume all responsibility from possible damage (lockups, card overheating, data loss from crashes, etc.). I cannot recommend that you overclock your card and no cards here ran reliably overclocked.. For a complete list of Voodoo2 tweaking settings (some may apply to the PC only) see http://www.bahnhof.se/~engstrom/e_3dfxvars.htm#v2 (thanks to Johan Liljeblad for the post of the URL in the forums).


Quake 2 Shadows - How much Performance Hit?: Dan Dickinson wrote that he noticed shadows were not enabled in Quake 2 by default (I'm not sure they are on the PC either really). The command to enable them is 'gl_shadows 1' (gl_shadows 0 turns them off). You can add 'set gl_shadows "1"' to your config.cfg file to make it a default option. I did some tests to see what performance effect shadows had with the Voodoo2, Game Rocket (Banshee) and Rage128. The table below shows the results. The Voodoo2 scores used my Voodoo2.ini file shown on the Voodoo2 tweaking page -Mike Breeden.

Quake 2 Timedemo Scores
(Shadows On/Off - 640x480 res.)
System/Card
Shadows OFF
Shadows ON
B&W G3 400
Voodoo2 12MB
(w/Voodoo2.ini)
41.5 fps
35.0 fps
B&W G3 400
Game Rocket
(IXmicro Banshee)
29.3 fps
24.7 fps
B&W G3 400
Rage128 rev B
47.3 fps
42.9 fps

All 3dfx cards (Voodoo2 and Banshee) used the B3 Mesa3dfxEngine, Rage128 used the latest Apple Rage128 drivers (ATI Video Update 1.0). Both Rage128 and Game Rocket were in the 66MHz PCI slot of a B&W G3. I suspect the lack of multitexturing in a single pass that is supported on the Voodoo2 and Rage128 is one reason the Banshee is slower in Quake 2.


Voodoo2.ini File Creator: If you don't want to edit or copy your own ini file (or use the one linked here), Mac3D's PimpSoft Labs page has posted the Voodoo2.inicinerator, a MesaTweaker-like utility to automate creation of Voodoo2 INI files. Here is the sample Voodoo2.ini file created by Voodoo2 Incinerator:

[VOODOO2]
SSTV2_REFRESH_512x384=75
SSTV2_REFRESH_640x480=75
SSTV2_REFRESH_800x600=75
SSTV2_REFRESH_1024x768=75

SSTV2_GRXCLK=90
FX_GLIDE_SWAPINTERVAL=0
FX_GLIDE_NO_SPLASH=1

Tests on a B&W G3/400 with 12MB Voodoo2 showed indentical performance in Quake to my Voodoo2.ini, so it's obvious that the FastMem and FastPCI tweaks (SSTV2_FASTMEM=1 and SSTV2_FASTPCIRD=1) have no effect on the Mac. I suspect this is due to the lack of Write Combining on the PCI bus on Macs (noted by Ken Dyke of 3Dfx here last week). I hate to admit it but Intel seems to build a better PCI chipset, with AGP to boot. I'm eager to see what Apple does with their Sawtooth AGP design. Regardless, with the right hardware (video card and CPU) the Mac does fine for most gamers.


Reader Feedback/Results: Several readers sent tips and results with additional tweaking of the ini file settings (latest reports first):

Quake 1 3Dfx Tweaking Results:

"Hi Mike...
Thought I'd give you the results of my attempts to tweak the Voodoo2. I used your .ini file from your Tweaks page, and then attempted to mess around with other settings (such as enabling 24-bit mode). The results below are for Quake 1. I have not yet tested Unreal, and I don't own Quake 2 yet.

Once I test Unreal, I'll send you those results. I'll also run the same tests on the iMac (Rev B, with 8MB Game Wizard) and let you know how those came out. Probably slightly better than these. ;-)

1) When running a timedemo, *MAKE SURE* to hide the console!! [This was noted last year here and is also mentioned in the FAQ's Game topics Quake 1 timedemo instructions -Mike] I noticed a 6 fps (!!) drop if the console remained visible during timedemos. Users should make sure to press the ~ key (or whatever the 'console' key is) immediately after pressing 'return' to start the timedemo - that way, the console is hidden ASAP. (The slowdown is most likely due to the semi-transparency of the console... Quake still has to draw the items behind the console, *AND* it has to mesh the console over those objects.)

2) Users should probably NOT disable Vsync (SSTV2_VSYNC). I tried that, and when I loaded Quake, the monitor went to sleep (it lost the sync signal). Disabling Vsync means the monitor may stop working. Also, *DO NOT* disable video (SSTV2_VIDEO_DISABLE) since that turns off the card altogether and the monitor REALLY goes to sleep. (I've got a Sony Trinitron Multiscan 15sf2... other monitors might react differently.)

3) In order to switch between 640x480 and 800x600, I had to quit Quake in order to reset the V2 card. Users should realize that the card needs to be reset before a resolution change can take place. Quitting Quake did this for me... I don't know if there's another way to do it while still in Quake. Unreal does this automatically... I don't know why Quake doesn't. [This is also noted in the Quake 1 timedemo instructions -Mike]

All tests were performed with an 8MB GameWizard on a PowerCenter Pro w/ a Railgun running at 303/303/1MB, no virtual memory, w/ OS 7.6.1. Lots of random extensions were on, and I also had file sharing enabled, so theoretically, higher scores are achievable. The card was NOT overclocked... it was at the stock 90MHz. All tests were run four times, and the results averaged.


        640x480 800x600 **UNTWEAKED**
Demo1   47.6   31.0
Demo2   46.8   30.0
Demo3   45.0   30.1

        640x480 800x600 **TWEAKED**
Demo1   64.5   41.5
Demo2   62.5   39.9
Demo3   60.9   39.8

Some *VERY* interesting things to note:

1) In 640x480, when compared to 75MHz vertical refresh: I noticed a slight (~0.5 fps) slowdown when using an 85MHz vertical refresh, and a slight (~0.5 fps) speedup when using 72MHz or below (no difference between 72, 67, or 60 MHz). In 800x600, when compared to 75MHz: the speedup/slowdown were more noticable - about 1 fps instead of 0.5 fps. They occured at the same resolutions, however - optimal performance at 72 MHz.

This may be due only to my monitor (see above), but I don't know. Any thoughts, Mike? [Perhaps the card is working harder refreshing the screen at the higher rate, just a guess.-Mike]

2) I tried all of the following, in every combination:

SSTV2_VIDEO_24BPP=0 (or 1)
SSTV2_VIDEO_CLEARCOLOR=0 (or 1)
SSTV2_VIDEO_FILTER_DISABLE=0 (or 1)
SSTV2_VIDEO_NOCLEAR=0 (or 1)

No combination of on or off had ANY effect whatsoever, at any resolution. I don't know if this is because of my monitor, my card, or what... maybe they simply don't do anything in Quake. I left in the first two, just in case... maybe they'll do something eventually. =)

For reference, the voodoo2.ini which yielded the best results on these tests was:

[VOODOO2]
SSTV2_REFRESH_640x480=72
SSTV2_REFRESH_800x600=72
SSTV2_REFRESH_1024x768=75
SSTV2_GRXCLK=90
[Default speed-Mike] SSTV2_SWAP_EN_WAIT_ON_VSYNC=0
FX_GLIDE_NO_SPLASH=1
FX_GLIDE_SWAPINTERVAL=0
SSTV2_FASTMEM=1
SSTV2_FASTPCIRD=1
SSTV2_VIDEO_24BPP=1
SSTV2_VIDEO_FILTER_DISABLE=1

Hope this helps!
--- Amir Caspi "


Tips from the Tuesday 7/6/99 Game News page:

Shannon Murdoch sent a few other FPS boosting tweaks to the config file for Quake [Update - these are improvements for Quake 1 but made no difference in Quake 2 a reader replied]. I've not tried them but here they are:

"These things added a few FPS:

gl_polyblend "0"
gl_subdivide_size "1024"
gl_finish "0"
gl_keeptjunctions "0"
scr_conspeed "9999"

I also set the voodoo2 to 95Mhz instead of 90. My PAKs are VISed also, I have r_wateralpha set to "0.3". Turning off flames might help even more, might even try that :-) "

Often it depends on what you're willing to give up in appearance for speed, but that may be a good tradeoff esp. for internet play. Note that I have one Creative Labs Voodoo2 card that will not run 100Mhz even with a cooler attached.


Men in Mac support volunteer Adam Dluzniewski writes with more tips on Q2 settings:

"Hi Mike,
I read the Mac Quake 2 First Impressions By Ruffin Bailey and I'd like to add something. I haven't tried this on a Mac but I assume it'll work. Instead of config.cfg file (as 'dude.cfg' in the example) it's better to name that file 'autoexec.cfg'. Q2 will execute it by itself without the need to type "exec dude.fg" in the console. You can store all kinds of sound, graphics and misc. settings and key bindings there, just make sure they don't conflict with Quake's own config.cfg, which should not be edited [it often is however-Mike]. [Note- the reason Ruffin may have used a non-autoexec file is to not have the settings be activated at each startup. Separate files are good for enabling a series of commands you only want to use for certain situations/maps, etc. -Mike]

BTW, this is a good place to get the console commands for Q2:
http://www.planetquake.com/console/commands/quake_2.html

There are certain commands that may help to brighten up the game and tons of useful key bindings. My favorite is:

bind F11 "set fov 30"
bind F12 "set fov 90"

This gives you sort of sniper-zoom mode for all weapons. Nice for camping with the rail:-) F11 is zoom and F12 brings ya back to normal field of view (fov).
Adam Dluzniewski (MiM) "

If you've got a tip or interesting results to report please contact me.

For samples of boosts from 3Dfx Tweaker use on a Voodoo1 card, see last year's 3Dfx Tweaker comparison page.




Other Site Quake/Quake2/Quake3 Links


 GAME NEWS 
 REVIEWS 
 EDITORIALS 
 READERS' LETTERS 
 GAMES HOME 




Back to XLR8YOURMAC.COM
Your Source for the best in CPU/SCSI/VIDEO card reviews, daily news, and more! 

Copyright © 1999. All rights reserved.
All brand or product names mentioned here are properties of their respective companies.
Disclaimer: Users must read and are bound by the Site Terms & Conditions of Use.