VOGONS


Table Fog & 8-bit Paletted Textures

Topic actions

Reply 220 of 553, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t

And yet more table fog testing.

Graphics cards tested:

  • 3DFX Voodoo3 2000, using 3DFX reference drivers version 1.07.00
  • Nvidia GeForce4 Ti4200 using Nvidia reference drivers version 45.23
  • ATi Radeon 9250 using ATi Catalyst reference drivers version 6.2

Games tested:

  • Heavy Gear II - retail CD version

Heavy Gear II - Historical Missions: Baja City

HG2_Fog.jpg
Filename
HG2_Fog.jpg
File size
291.42 KiB
Views
1963 views
File license
Fair use/fair dealing exception

The fog effect on the mountains is present on the Voodoo3 and the GeForce4 while it's missing on the ATi 9250. This indicates that Heavy Gear II does indeed use table fog.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 222 of 553, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t
Kahenraz wrote on 2022-07-06, 04:08:

And the 9000 series requires 6.2 Catalyst drivers.

Not all of them do. My 9000 Pro works fine with Catalyst 4.3 and I imagine a 9700 could also use that version or an even earlier one. It's mostly the models with newer chip revisions like my 9550 that seem to need later drivers.

That said, using ATi's later Win9x drivers often provides better performance, without compromising older game compatibility. This is in contrast to Nvidia, whose newer drivers (beyond 45.23) tend to reduce performance on older cards and sometimes even cause issues with certain games.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 224 of 553, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t
Kahenraz wrote on 2022-07-06, 06:53:

Is table fog support any better with 4.3?

No difference.

Using registry tweaks, the fog effect looks and works exactly the same as with 6.2 drivers on that 9000 Pro. Without registry tweaks, there is simply no table fog in games that use it.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 225 of 553, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t

More table fog testing.

Graphics cards tested:

  • 3DFX Voodoo3 2000, using 3DFX reference drivers version 1.07.00
  • Nvidia GeForce4 Ti4200 using Nvidia reference drivers version 45.23
  • ATi Radeon 9250 using ATi Catalyst reference drivers version 6.2

Games tested:

  • Star Wars: Episode I - The Phantom Menace - retail CD version with the latest official patch 1.1 applied

Star Wars: Episode I - The Phantom Menace - Mission 1: Trade Federation Battleship

EP1_Fog.jpg
Filename
EP1_Fog.jpg
File size
206.64 KiB
Views
1866 views
File license
Fair use/fair dealing exception

The fog effect in the room is present on the Voodoo3 and the GeForce4 while it's missing on the ATi 9250. This indicates that Star Wars: Episode I - The Phantom Menace does indeed use table fog.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 226 of 553, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t

Thanks to a tip from @Gmlb256 we can add GLQuake and the GL version of Hexen II to the list of games which can optionally use paletted textures. From glqnotes.txt:

Glquake v0.97, Quake v1.09 release notes wrote:

GL_EXT_shared_texture_palette

GLQuake uses 16bit textures by default but on OpenGL implementations that support the GL_EXT_shared_texture_palette extension, GLQuake will use 8bit textures instead. This results in using half the needed texture memory of 16bit texture and can improve performance. This is very little difference in visual quality due to the fact that the textures are 8bit sources to begin with.

By starting a new game and then opening the console, I have confirmed that this does automatically enable paletted textures in GLQuake on a Voodoo3:

GLQuake_Voodoo3.jpg
Filename
GLQuake_Voodoo3.jpg
File size
70.08 KiB
Views
1841 views
File license
Fair use/fair dealing exception

Since Hexen II uses a modified version of the Quake engine, we can infer that its GL version also has this functionality. Here's what the console output of GL Hexen II looks like on a GeForce4 Ti4200:

GLHexenII_GeForce4.jpg
Filename
GLHexenII_GeForce4.jpg
File size
99.83 KiB
Views
1814 views
File license
Fair use/fair dealing exception

The lines listing GL_EXT_paletted_texture and GL_EXT_shared_texture_palette are clearly visible.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 227 of 553, by leileilol

User metadata
Rank l33t++
Rank
l33t++

GLQuake and friends reporting all of the extensions doesn't mean it's going to use any of them. Look specifically for the "8-bit GL extensions enabled." line. On Quake2 and friends, that's "...using GL_EXT_shared_texture_palette"

The one Quake2-based game I can think of that's released commercially that DOESN'T have paletted texture support is Soldier of Fortune.

apsosig.png
long live PCem

Reply 228 of 553, by Gmlb256

User metadata
Rank l33t
Rank
l33t

Looking at the Hexen II source code, it uses vendor-based extension strings for paletted texture support unlike GLQuake. The message when that feature is enabled is slightly different: "Using palettized textures!".

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 229 of 553, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t
Gmlb256 wrote on 2022-07-06, 20:53:

Looking at the Hexen II source code, it uses vendor-based extension strings for paletted texture support unlike GLQuake. The message when that feature is enabled is slightly different: "Using palettized textures!".

It looks like they restrict this to MiniGL on 3DFX cards. When I tested this on my Voodoo3 using MiniGL 1.49 I did get the "Using palettized textures!" message:

Voodoo3_MiniGL.jpg
Filename
Voodoo3_MiniGL.jpg
File size
76.97 KiB
Views
1752 views
File license
Fair use/fair dealing exception

But when I used the Voodoo3's OpenGL ICD instead, the message didn't appear:

Voodoo3_ICD.jpg
Filename
Voodoo3_ICD.jpg
File size
75.64 KiB
Views
1752 views
File license
Fair use/fair dealing exception

In conclusion, Hexen II does use paletted textures, but only on very specific hardware/software combinations.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 230 of 553, by Kahenraz

User metadata
Rank l33t
Rank
l33t

It would be nice if a workaround can be found for ATI cards. The 9000 series and x300-x850 have the most features and best performance for Windows 9x drivers when it comes to PCI and PCIe. GeForce PCI cards have certain performance issues in some titles that I was unable to resolve, and GeForce FX PCIe cards have their own serious problems.

In the event that AGP isn't available, I found that ATI is usually a better option, minus all the issues mentioned in this thread.

Reply 231 of 553, by BetaC

User metadata
Rank Oldbie
Rank
Oldbie
Joseph_Joestar wrote on 2022-07-06, 10:59:
More table fog testing. […]
Show full quote

More table fog testing.

Graphics cards tested:

  • 3DFX Voodoo3 2000, using 3DFX reference drivers version 1.07.00
  • Nvidia GeForce4 Ti4200 using Nvidia reference drivers version 45.23
  • ATi Radeon 9250 using ATi Catalyst reference drivers version 6.2

Games tested:

  • Star Wars: Episode I - The Phantom Menace - retail CD version with the latest official patch 1.1 applied

Star Wars: Episode I - The Phantom Menace - Mission 1: Trade Federation Battleship

EP1_Fog.jpg

The fog effect in the room is present on the Voodoo3 and the GeForce4 while it's missing on the ATi 9250. This indicates that Star Wars: Episode I - The Phantom Menace does indeed use table fog.

Ironically, the lack of fog makes it look a lot like the PS1 version in this scene.

ph4ne7-99.png
g32zpm-99.png
0zuv7q-6.png
7y1bp7-6.png

Reply 232 of 553, by Kahenraz

User metadata
Rank l33t
Rank
l33t

It's strange that this is such an intermittent issue. With the need to use different tricks to optimize for FPS by use of draw distance, I would have thought that fog would be a first-class citizen of a feature.

Can someone explain why it's so intermittent or problematic across vendors and drivers? And why, even on the same card, it may work in some but not all games?

Reply 233 of 553, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t
Kahenraz wrote on 2022-07-07, 02:15:

It's strange that this is such an intermittent issue. With the need to use different tricks to optimize for FPS by use of draw distance, I would have thought that fog would be a first-class citizen of a feature.

From what I've seen, it's true that fog was mostly used to reduce draw distance during the early days of 3D acceleration, especially for games which were ported from consoles like Shadows of the Empire. However, in the following years, developers started using fog to enhance the atmosphere of games, rather than as a way to improve frame rate. Thief 2 and NFS: High Stakes are good examples of this.

Can someone explain why it's so intermittent or problematic across vendors and drivers?

3DFX cards supported table fog out of the box, and those were by far the most popular 3D accelerators early on. This likely led game developers to focus on table fog at that time. In consequence, this caused other hardware manufacturers like Nvidia and Matrox to support table fog as well.

And why, even on the same card, it may work in some but not all games?

There are different types of fog implementation. You can read about those here and also here. Some games only used table fog and, if that wasn't supported by your hardware, the effect simply wasn't rendered. Other games may have used different fog implementations and/or had a fallback mechanism.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 234 of 553, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t
leileilol wrote on 2022-07-06, 19:52:

GLQuake and friends reporting all of the extensions doesn't mean it's going to use any of them. Look specifically for the "8-bit GL extensions enabled." line. On Quake2 and friends, that's "...using GL_EXT_shared_texture_palette"

Thanks! I just tested Heretic II, which is based on the Quake 2 engine, and it does indeed state "...using GL_EXT_shared_texture_palette" on hardware which supports paletted textures:

Heretic2_GeForce4.jpg
Filename
Heretic2_GeForce4.jpg
File size
145.86 KiB
Views
1642 views
File license
Fair use/fair dealing exception

This was tested on a GeForce4 Ti4200. Paletted texture support was auto-detected and used by Heretic II under OpenGL, without the need to set anything specific in the game options.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 235 of 553, by bloodem

User metadata
Rank Oldbie
Rank
Oldbie

It's so strange that ATI never even tried to properly emulate table fog support and have it available by default, without needing any registry tweaks. It looks like it should have been a pretty trivial thing to do. It didn't even need to be perfect, just... good enough.

I guess they were too busy fixing actual game breaking issues with their drivers (and lack of table fog was the least of their problems during that time).
All in all, I am still not really bothered by it (in fact, in some cases, I actually prefer how the image looks without fog). But that's not really the point... as you said, it can affect the game's atmosphere (as it was intended by the game's developers).

1 x PLCC-68 / 2 x PGA132 / 5 x Skt 3 / 9 x Skt 7 / 12 x SS7 / 1 x Skt 8 / 14 x Slot 1 / 5 x Slot A
5 x Skt 370 / 8 x Skt A / 2 x Skt 478 / 2 x Skt 754 / 3 x Skt 939 / 7 x LGA775 / 1 x LGA1155
Current PC: Ryzen 7 5800X3D
Backup PC: Core i7 7700k

Reply 236 of 553, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t
bloodem wrote on 2022-07-07, 06:28:

It's so strange that ATI never even tried to properly emulate table fog support and have it available by default, without needing any registry tweaks. It looks like it should have been a pretty trivial thing to do. It didn't even need to be perfect, just... good enough.

Yeah, that's pretty odd indeed.

To ATi's credit, they did eventually implement fully working table fog in Catalyst 7.11. It is actually enabled and active by default in that driver version. Of course, Catalyst 7.11 doesn't support Win9x, so there's that.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 238 of 553, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
BEEN_Nath_58 wrote on 2022-07-07, 08:23:

On the first page I see mention of Rogue Spear supporting table fog. has anyone confirmed it?

After quite some time of struggle, I have been able to run the vanilla Rogue Spear.

Also I managed to run the D3D vanilla NFS High Stakes patched to v4.50 without any stock pack or file changes or d3da.dll changes, which was impossible to run since Vista because of having privileged instructions.
To make sure my GPU is not just failing to render fog in Thief 2, I want to test them in these two games. For these one, mentioning the graphical settings and map should be sufficient.

previously known as Discrete_BOB_058

Reply 239 of 553, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t
BEEN_Nath_58 wrote on 2022-07-07, 14:03:

To make sure my GPU is not just failing to render fog in Thief 2, I want to test them in these two games. For these one, mentioning the graphical settings and map should be sufficient.

For NFS High Stakes I used the demo version which only has one track. Not sure what it's called, but it does have fog. I think @bloodem has the full version of that game an is probably more acquainted with it. He did mention Celtic Ruins as a track which has fog.

As for Rogue Spear, I'm completely unfamiliar with that game. Never played it and don't own a copy.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi