VOGONS


First post, by Maraakate

User metadata
Rank Oldbie
Rank
Oldbie

Thanks to ggorts efforts we now have 3dfx rendering in Q2DOS with Mesa 5.0.2! I've tested it on a Voodoo 2, Voodoo 3, and Voodoo 5. The Voodoo 1 code path works fine in emulators, so it should work OK on real hardware as well.

To get started with it first download regular Q2DOS as you will need the gamex86.dxe (and gamespy.dxe if you want to use the server browser).

Then, grab the latest 3DFX compile here. Before you extract, look at the directories and copy the glide3x.dxe you need to your root quake 2 directory.

[*] SST1 -- Voodoo 1
[*] CVG -- Voodoo 2
[*] h5 -- Voodoo 3 and up

Run Q2FX.exe and select 3dfx Opengl from the video menu (or start with +set vid_ref gl) and start playing!

Here are some screenshots from my P2 400 with a Voodoo 5 5500 (framerate is lower than typical because I had to disable SLI) with GL_NEAREST_MIPMAP_LINEAR for that slightly old-school blocky software feel 😀

Attachments

  • q2dos_3dfx_3.png
    Filename
    q2dos_3dfx_3.png
    File size
    1.06 MiB
    Views
    4054 views
    File license
    Fair use/fair dealing exception
Last edited by Maraakate on 2015-08-19, 16:05. Edited 1 time in total.

Reply 1 of 20, by Maraakate

User metadata
Rank Oldbie
Rank
Oldbie

Here's some more screenshots at 1280x1024 from the same setup.

Attachments

  • q2dos_3dfx_4.png
    Filename
    q2dos_3dfx_4.png
    File size
    805.83 KiB
    Views
    4053 views
    File license
    Fair use/fair dealing exception
  • q2dos_3dfx_2.png
    Filename
    q2dos_3dfx_2.png
    File size
    593.7 KiB
    Views
    4053 views
    File license
    Fair use/fair dealing exception
  • q2dos_3dfx_1.png
    Filename
    q2dos_3dfx_1.png
    File size
    516.75 KiB
    Views
    4053 views
    File license
    Fair use/fair dealing exception

Reply 2 of 20, by Maraakate

User metadata
Rank Oldbie
Rank
Oldbie

Here is one shot at 1024x768 with bilinear filtering to see the normal OpenGL smoothing effect.

Attachments

  • q2dos_3dfx_5.png
    Filename
    q2dos_3dfx_5.png
    File size
    855.77 KiB
    Views
    4013 views
    File license
    Fair use/fair dealing exception

Reply 6 of 20, by Maraakate

User metadata
Rank Oldbie
Rank
Oldbie
__ggorts wrote:

Thank you for bringing us this, especially for creating such a robust result! 😀

Thanks a lot for the initial concept and getting a prototype up and running. If it wasn't for you this project wouldn't exist!

Reply 11 of 20, by Maraakate

User metadata
Rank Oldbie
Rank
Oldbie
Rod Primitive wrote:
Maraakate wrote:

Also, someone just asked my why the arm was damn long. I play at fov 125 😖

Why on earth do you play with such hideous FOV value?

I have legitimate depth perception problems with my vision. I always figured as such, but it was verified a few years ago when I took an eye exam when trying to get into the US Coast Guard.

Reply 12 of 20, by Maraakate

User metadata
Rank Oldbie
Rank
Oldbie
kanecvr wrote:

Love this project. I'll start setting it up on all my 3dfx rigs to see how it goes.

A Duke 3D dos glide port would be kick-ass!

You really need at least a Voodoo 3 to have some serious fun with it. A Voodoo 2 may work OK. I did test a Voodoo 2 on a Pentium 1 200 mmx and performance was OK. It wasn't earth shattering, Windows would beat it by 5-10 frames on average every time, especially in outdoor areas. But, it is fun playing it under true DOS. A Voodoo 3 and later works much better. Voodoo 1 hit's a wall once a Pentium 2 gets involved. When I upgraded from a P2 400 to a P3 550 I saw no frame rate improvement on the V1, but other cards benefited from it. Voodoo Rush is too slow.

Voodoo 1 and Rush will play Quake 1 DOS with 3DFX just fine however. Check out http://dk.toastednet.org/QDOS for that particular project.

I see you are looking for a V5 5500. I have a couple in AGP form, but I checked your amibay post and you don't really have anything i am interested in trading for. A Socket 370 with ISA slots that will work the 1.0-1.4ghz CPUs is something I am interested in (not sure if such a thing exists) or a Slot 1 1GHz 100mhz FSB CPU is something I am interested in as well.

Reply 13 of 20, by leileilol

User metadata
Rank l33t++
Rank
l33t++

I think the point of the post is that he's trying to ideas-person you into getting jfduke3D/Eduke32 going in dos with the Polymost gl wrapping. because dos gl->glide ports grow on trees and 3dfx cards on period hardware sure can handle use of all those unoptimized pngs and md2/md3 meshes /s

apsosig.png

Reply 14 of 20, by Maraakate

User metadata
Rank Oldbie
Rank
Oldbie
leileilol wrote:

I think his point of the post is that he's trying to ideas-person you into getting jfduke3D/Eduke32 going in dos with the Polymost gl wrapping. because dos gl->glide ports grow on trees

Lol. I'm not doing another Windows to DOS to DOS GL port for a very long time. The whole Q2DOS project was born out of me having nothing to do for a whole summer when I was laid off. It's pretty much mature now at this point that we haven't pushed any new commits in over a month.

I was thinking of possibly porting Q3A to DOS at some point, but the reality of that would be that you'd need a V5 5500 and probably a higher end P3 to even really enjoy it under DOS anyways so it's very limited to a few people with BX440 boards that allow P3s higher than 550mhz.

Daikatana is a definite possibility since it Q2 based and I am one of the coders for 1.3 and now there is a linux port for it. Again, that game runs like shit even on my 5500 and a P2. I remember reading that for the time the game ran like a dog on a Voodoo cards and it really shows. Even with WickedGL the game barely keeps up.

However, if Kingpin or SiN ever saw a source code release I would definitely merge Q2DOS codebase into it 😈

Reply 15 of 20, by leileilol

User metadata
Rank l33t++
Rank
l33t++

even in Polymost's early days in JFDuke3D, a Voodoo3 3000 couldn't handle it well. it also had huge texture binding issues even in the kenbuild test. The spinning fan looked like a wall, and this was with MesaFX even!. He's also asking for a glide version of MBF in the MBF thread too fyi (about just as unfeasible)

personally i don't see where q3 dos would get inflated requirements. There's less stuff for the renderer to deal with (no lightmap updates, no particle system, somewhat simpler BSP format, a vertexlight path for single TMU stuff), though the VM system and sound mixing are a nasty bit of cpu bloat. Most of the memory sinks into textures (which could be pallettized to help this) and model data (MD3s plus their LOD versions are loaded at all times, even on low model detail. These are hundreds of higher precision vertex morph frames for every player, it really adds up to a lot)

Daikatana was a performance fail on a Geforce2 also. My Geforce2 GTS came with the DK demo, not really the best way to showcase then next-generation 3d hardware 🤣 Evolva, FAKK2, Ground Control, or even Nascar 2000 would have been more appropriate.

apsosig.png

Reply 16 of 20, by Maraakate

User metadata
Rank Oldbie
Rank
Oldbie
leileilol wrote:

even in Polymost's early days in JFDuke3D, a Voodoo3 3000 couldn't handle it well. it also had huge texture binding issues even in the kenbuild test. The spinning fan looked like a wall, and this was with MesaFX even!. He's also asking for a glide version of MBF in the MBF thread too fyi (about just as unfeasible)

personally i don't see where q3 dos would get inflated requirements. There's less stuff for the renderer to deal with (no lightmap updates, no particle system, somewhat simpler BSP format, a vertexlight path for single TMU stuff), though the VM system and sound mixing are a nasty bit of cpu bloat. Most of the memory sinks into textures (which could be pallettized to help this) and model data (MD3s plus their LOD versions are loaded at all times, even on low model detail. These are hundreds of higher precision vertex morph frames for every player, it really adds up to a lot)

Daikatana was a performance fail on a Geforce2 also. My Geforce2 GTS came with the DK demo, not really the best way to showcase then next-generation 3d hardware 🤣 Evolva, FAKK2, Ground Control, or even Nascar 2000 would have been more appropriate.

I'm assuming Q3A requires something more than Q2's requirements. The biggest issue at hand with the whole DOS Glide with Mesa or Sage stuff is that larger outdoor areas take a 10fps hit on average compared to their Windows OpenGL ICD or WickedGL contemporaries. It appears to be a Mesa issue specifically as the same thing would happen under windows when I used the Mesa DLLs.

To play Q2DOS with 3DFX with practically no show stopping large frame rate drops (for the most part) a P3 is pretty much necessary.

Q3ADOS is more of a pipe dream. I really doubt I'll ever get around to doing it.

Reply 17 of 20, by Maraakate

User metadata
Rank Oldbie
Rank
Oldbie

Also, MBF?

EDIT: Oh, that Doom port. Yeah, GL or Glide ports of the 2.5D are mostly pointless IMO. The Blood 3DFX and Shadow Warrior 3DFX builds don't really enhance the game that much to justify their existence. They also are very picky about what cards they want to run on and are buggy anyways.

I tried the Shadow Warrior 3DFX build recently for the first time on a V2 with P1 200 MMX and the performance was all over the place. Basically wasn't worth it.

Reply 18 of 20, by Maraakate

User metadata
Rank Oldbie
Rank
Oldbie

Sezero has found out why the Macronix variants of Voodoo Rush cards aren't working and has updated Q2DOS accordingly.

Performance was rather abysmal on my P1 machine, as to be expected, but it's now available for completeness sake.

Binaries are available at the Q2DOS project page on bitbucket.

Reply 19 of 20, by kanecvr

User metadata
Rank Oldbie
Rank
Oldbie

The link to the 3dfx version is down. I downloaded the version you linked here and attempted to set 3dfx opengl anyway, but it's asking for a gl.dxe file "ref_gl: : R_Init() - could not load "GL.DXE"

EDIT - never mind - the voodoo drivers are included in the latest download:

the VOODOO folder includes glide3x.dxe (for whatever card you're using) and the openGL folder containes the GL.dxe file needed for mesa / sage / etc. I'll copy them to the root folder and try again.