Some technical questions about 3dfx HW and nglide.

General discussion about nGlide.
AnarchoCapitalist
Posts: 66
Joined: Thu Aug 05, 2010 4:53 pm

Some technical questions about 3dfx HW and nglide.

Postby AnarchoCapitalist » Sun Jul 29, 2012 1:44 am

1. What depth buffer format(s) did glide use on 3dfx hardware? All I know is that the Voodoo4 and 5 series had a 24 bit fp zbuffer format and a 24 bit fp wbuffer format, based upon info 3dfx advertised on the retail boxes.

2. What DX9 depth buffer format(s) is/are called for by nglide? Why?

I hope the 2nd question even makes sense. I'm terribly sorry if it doesn't.
2500K
GTX 780 3 GB
8 GB RAM
Antec 300 Panaflo U1A exhaust
WDBlack500GB, WD 1TB, WD 320GB
Sabertooth P67 B3
W7 x64
Antec Signature 650

User avatar
Zeus
Site Admin
Posts: 1472
Joined: Sun Sep 21, 2008 2:51 pm
Contact:

Re: Some technical questions about 3dfx HW and nglide.

Postby Zeus » Tue Jul 31, 2012 9:34 pm

AnarchoCapitalist wrote:1. What depth buffer format(s) did glide use on 3dfx hardware? All I know is that the Voodoo4 and 5 series had a 24 bit fp zbuffer format and a 24 bit fp wbuffer format, based upon info 3dfx advertised on the retail boxes.

Even if 24-bit depth was available with Glide3.0 back then, it was a belated initiative (3dfx went bankrupt several months after releasing V4/V5). I have never seen a Glide app that required this format.

Configurations:
Glide 2.1 (any driver version) + V1-V5 = 16-bit z and w
Glide 2.4 (any driver version) + V1-V5 = 16-bit z and w
Glide 3.0 (any driver version) + V1-V3 = 16-bit z and w
Glide 3.0 (old driver version) + V4-V5 = 16-bit z and w
Glide 3.0 (latest driver version) + V4-V5 = 16-bit z and w (+ potential 24-bit z and w; needs an app that supports it).

I say potential because I never confirmed this capability. We can do this now, just out of curiosity. I created new thread here.

AnarchoCapitalist wrote:2. What DX9 depth buffer format(s) is/are called for by nglide? Why?

DX9 compatible hardware supports two formats: 16-bit z and 24-bit z. The choice was obvious - 24-bit z.

AnarchoCapitalist
Posts: 66
Joined: Thu Aug 05, 2010 4:53 pm

Re: Some technical questions about 3dfx HW and nglide.

Postby AnarchoCapitalist » Tue Jul 31, 2012 10:03 pm

Zeus wrote:
AnarchoCapitalist wrote:1. What depth buffer format(s) did glide use on 3dfx hardware? All I know is that the Voodoo4 and 5 series had a 24 bit fp zbuffer format and a 24 bit fp wbuffer format, based upon info 3dfx advertised on the retail boxes.

Even if 24-bit depth was available with Glide3.0 back then, it was a belated initiative (3dfx went bankrupt several months after releasing V4/V5). I have never seen a Glide app that required this format.

Configurations:
Glide 2.1 (any driver version) + V1-V5 = 16-bit z and w
Glide 2.4 (any driver version) + V1-V5 = 16-bit z and w
Glide 3.0 (any driver version) + V1-V3 = 16-bit z and w
Glide 3.0 (old driver version) + V4-V5 = 16-bit z and w
Glide 3.0 (latest driver version) + V4-V5 = 16-bit z and w (+ potential 24-bit z and w; needs an app that supports it).

I say potential because I never confirmed this capability. We can do this now, just out of curiosity. I created new thread here.

AnarchoCapitalist wrote:2. What DX9 depth buffer format(s) is/are called for by nglide? Why?

DX9 compatible hardware supports two formats: 16-bit z and 24-bit z. The choice was obvious - 24-bit z.

Thanks for answering my questions: ) The 24 bit z buffer format used by DX9 must be more flexible than I thought it was.

I wish I had a Voodoo4/5 so I could help you out.
2500K
GTX 780 3 GB
8 GB RAM
Antec 300 Panaflo U1A exhaust
WDBlack500GB, WD 1TB, WD 320GB
Sabertooth P67 B3
W7 x64
Antec Signature 650

User avatar
Zeus
Site Admin
Posts: 1472
Joined: Sun Sep 21, 2008 2:51 pm
Contact:

Re: Some technical questions about 3dfx HW and nglide.

Postby Zeus » Sat Aug 25, 2012 6:59 pm

You may be interested in Truffon's tests:

Windows 98:
Glide 3.0 (latest official 3Dfx drivers) + V5 5500 = 16 bit z and w (only)

Windows XP:
Glide 3.0 (5 different unofficial drivers) + V5 5500 = 16 bit z and w (only)

This means 24-bit depth was not available with Glide API at all.

Squall Leonhart
Posts: 68
Joined: Wed Jun 01, 2011 11:55 pm

Re: Some technical questions about 3dfx HW and nglide.

Postby Squall Leonhart » Tue Sep 11, 2012 10:14 pm

Notice that the Voodoo boards can only display 16 bit color, but the shadow framebuffer can be run in 24 bit color.

User avatar
Zeus
Site Admin
Posts: 1472
Joined: Sun Sep 21, 2008 2:51 pm
Contact:

Re: Some technical questions about 3dfx HW and nglide.

Postby Zeus » Tue Sep 11, 2012 11:37 pm

We're talking here only about depth buffering.

AnarchoCapitalist
Posts: 66
Joined: Thu Aug 05, 2010 4:53 pm

Re: Some technical questions about 3dfx HW and nglide.

Postby AnarchoCapitalist » Mon Oct 22, 2012 1:28 pm

Zeus wrote:We're talking here only about depth buffering.

Another question... what hacks do you use to emulate w-buffering? Do they differ for nvidia compared to AMD hardware?

I've noticed some things (mainly shorter/compressed looking depth and different color calculations, which is to be expected anyway and I'm sure nvidia is closer to the way 3dfx HW calculated things than AMD is) haven't been perfect, but they're still pretty good.

That said, I don't know whether I should say this, but I've always thought that nglide should either (A) use a higher DX version (maybe even OpenGL) so it could use a 32 bit fixed point log z-buffer for games that originally used the w-buffer... however, AMD and nv GPUs still behave different with log z-buffers (at least in OpenGL) and it may not even work because early z (hi Z is what AMD calls it) may be forced by the drivers if not by the hardware (the performance hit of turning it off is negligible, however, and it would still work fine with VSA-100-style RGSS).. or... (B) it could be run through software. A 4 core HyperThread 3.3 GHz Haswell (AVX2, scatter/gather inst and its TSX) should be fast enough to emulate a Voodoo5 at 90% speed and 4 nines or greater accuracy. I wish that it wouldn't have an iGPU in it and that they'd instead add the audio codec/storage/LAN/PCH/USB controller to the CPU die... they're only going to add the VRM on die for now while making the iGPU faster the latter of which isn't what I want.

Sorry for the irrelevant talk, it was just all in my head. Let me know what you think : )
2500K
GTX 780 3 GB
8 GB RAM
Antec 300 Panaflo U1A exhaust
WDBlack500GB, WD 1TB, WD 320GB
Sabertooth P67 B3
W7 x64
Antec Signature 650

User avatar
Zeus
Site Admin
Posts: 1472
Joined: Sun Sep 21, 2008 2:51 pm
Contact:

Re: Some technical questions about 3dfx HW and nglide.

Postby Zeus » Tue Oct 23, 2012 1:16 am

I agree 32-bit z would be better, but you know what DX11 means - dropped Windows XP / Vista / most GPUs support and decreased compatibility with games. That would be really stupid, since nGlide is not an emulator. And all that just for a small depth precision improvement.

Implementing depth buffer in pure software would be a performance disaster. Believe me, even Haswell would choke to death.

You also asked about w to z conversion...
That's just a simple math equation. No hacks are involved. Using hacks is the worst thing you can do. If you'll ever consider writing an emulator or related - avoid them at any cost.

AnarchoCapitalist
Posts: 66
Joined: Thu Aug 05, 2010 4:53 pm

Re: Some technical questions about 3dfx HW and nglide.

Postby AnarchoCapitalist » Thu Oct 25, 2012 5:37 pm

Zeus wrote:I agree 32-bit z would be better, but you know what DX11 means - dropped Windows XP / Vista / most GPUs support and decreased compatibility with games. That would be really stupid, since nGlide is not an emulator. And all that just for a small depth precision improvement.

Implementing depth buffer in pure software would be a performance disaster. Believe me, even Haswell would choke to death.

You also asked about w to z conversion...
That's just a simple math equation. No hacks are involved. Using hacks is the worst thing you can do. If you'll ever consider writing an emulator or related - avoid them at any cost.

Thank you Mr. Zeus:) I think that a 32 bit FX log z buffer would be a large improvement in IQ (to most people it wouldn't matter and you're reasons are logical I'm sure). I do agree that hacks really suck.

I also think Zeus Software has taken the best approach to a glide wrapper so far (they've adhered to updating and supporting it as well as adhering to their principles about not adding stuff that I personally believe MS/D3D is responsible for the lack of) and I'm sure as times change at least some of Zeus Software's programmers will one day be interested in making a 3dfx VSA-100 chip replicator.

I'm sure you're right about Haswell. After all, AVX2 isn't going to be all it could be (it's going to be FMA3 rather than FMA4) and it's not going to be DDR4 native. I do think that beefing up the iGPU is a mistake and that they should be adding more AVX2 units (plus possibly texture units and maybe display logic, but not blend and depth units) and/or they should also be adding the PCH/USB/SATA/LAN/Audio codecs on chip. Then again, intel probably isn't as efficient as Zeus Software is because Zeus Software asks for donations and they've received them... from me I know for sure. :) I may donate some more when I have more money. I think you've done a good job as far as wrappers go and no one wants to attempt to replicate a Voodoo5 via software anyway.

One question though... do you know how the emulator project of the Vooodoo1 chipset is going? Do you think Haswell will be fast enough to emulate the 1/2 the speed of the Voodoo1 chipset at 99.99% accuracy? I haven't heard anything about it lately.
2500K
GTX 780 3 GB
8 GB RAM
Antec 300 Panaflo U1A exhaust
WDBlack500GB, WD 1TB, WD 320GB
Sabertooth P67 B3
W7 x64
Antec Signature 650

User avatar
Zeus
Site Admin
Posts: 1472
Joined: Sun Sep 21, 2008 2:51 pm
Contact:

Re: Some technical questions about 3dfx HW and nglide.

Postby Zeus » Thu Oct 25, 2012 10:41 pm

AnarchoCapitalist wrote:One question though... do you know how the emulator project of the Vooodoo1 chipset is going? Do you think Haswell will be fast enough to emulate the 1/2 the speed of the Voodoo1 chipset at 99.99% accuracy? I haven't heard anything about it lately.

These questions should be addressed to the authors.


Return to “General”

Who is online

Users browsing this forum: No registered users and 4 guests