..I think I should really create a small FAQ about this
anyway,to answer your question first,I would recommend Amigasport 3.0xp (make sure you have a look at the readme before installing),updated with the
most compatible retro glide2x/glide3x/opengl (just unpack to your windows/system32 folder after you install the driver,overwriting the previous files).plus wickedgl for quake3 based games.this should give you optimal performance in the games you mentioned (with the exception of UT2004,which wont run good on that system under ANY circumstances.Frets On Fire may need some additional tweaking too).
now,if you want to know why did I recommend all that stuff,continue reading,but be warned,it may be a bit too technical
1) why amigasport? the answer is simple,you want to use the pc for retro/light gaming,that means you need a fast,stable driver that runs old(er) games.SFFT is great if you really need a DX8 compatible driver (which you dont),but sometimes it can behave really erratic,and it tends to be a bit slower too.
2) why that extra package with glide drivers? the package contains 3 files:
-latest original glide2x from 3dfx-maybe not as fast in unreal tournament as the glide2x to glide3x wrapper included in amigasport,but much,much more compatible with all those glide2x games out there (diablo2).
-latest glide3x release from dborca (creator of mesaFX)-this is just an updated glide3x,you will need it if you want to use mesaFX.
-the latest opengl icd from 3dfx-maybe not as compatible with newer games as the opengl interceptor included in amigasport,but way better for retro opengl stuff like quake1/2 etc.
3)
wickedgl.this is the right thing if you want to play quake3 based games.small note-it wont work right unless you use that glide package
3)
mesaFX.this the latest opengl driver for 3dfx cards.very,very compatible,but it tends to be slower that wickedgl or default 3dfx opengl icd.dont use unless you need the compatibility boost or some of the special fixes (I think Frets On Fire may need mesaFX,we will see).note-wont work right unless you (guess what) use the glide3x from that extra package.
note: mesafx and wickedgl are not driver-dependant and can be used simultaneously (example: you can use wickedgl for quake3 and mesafx for frets on fire at the same time).
hope I didnt bore you to death