VOGONS


First post, by Snazz

User metadata
Rank Newbie
Rank
Newbie

In the video options for Battlefield 1942 (DX8) & Vietnam (DX9) you can normally select any refresh rate your monitor supports ingame (e.g. 60/120/144/240hz).
However when using dgVoodoo2 (2.83) and a fresh config, only 60hz appears in the video options, and is the max rate the game can be forced to run on.
That is until you both enable EnumerateRefreshRates AND specificy a refresh rate in the config file (e.g. unforced, 144hz). In which case you are forcing a certain refresh rate, so the ingame video options are no longer relevant.

By comparison, when using the ENB DX8-DX9 convertor on Battlefield 1942 (Vietnam is already DX9) all the refresh rate options remain available ingame, zero config required.

The problem with having to specify the refresh rate in the config file, rather than allowing it to be changed to anything >60hz ingame, is that you have to manually edit it each time the game is run on different computers (e.g. friends) or displays (e.g. a TV). It's also plain head-scratching the first time you setup dgVoodoo, as EnumerateRefreshRates is disabled by default and unusually undocumented in the config.

I can script a more user-friendly bat/powershell method of changing the config for my own purposes, but since the ENB convertor has no qualms, I wonder if it's an avoidable issue for dgVoodoo too.

Reply 1 of 4, by Snazz

User metadata
Rank Newbie
Rank
Newbie

I should acknowledge the Control Panel is provided for more-user-friendly config editing and that GUI does have a tooltip for the Enumerate checkbox, which I both appreciate.
I just prefer changing resolution & refresh rate ingame for each PC/monitor, and avoiding any confusion with those options being overriden elsewhere.

I'm also using v2.83.2 to be precise.

Reply 2 of 4, by myne

User metadata
Rank Oldbie
Rank
Oldbie

Why are you using dgvoodoo for a directx game that last I checked has no problems running natively?

I built:
Convert old ASUS ASC boardviews to KICAD PCB!
Re: A comprehensive guide to install and play MechWarrior 2 on new versions on Windows.
Dos+Windows 3.11+tcp+vbe_svga auto-install iso template
Script to backup Win9x\ME drivers from a working install
Re: The thing no one asked for: KICAD 440bx reference schematic

Reply 3 of 4, by Snazz

User metadata
Rank Newbie
Rank
Newbie
myne wrote on 2024-11-24, 09:58:

Why are you using dgvoodoo for a directx game that last I checked has no problems running natively?

Performance and stability primarily, particularly with graphics mods like ScureHD's. Albeit DX9 convertor is 100% more stable at loading certain modded maps, usually when they approach the 4GB RAM mark (even with LAA patch applied).

Portable AA and AF settings secondly (without less-savvy friends having to faff around with Nvidia/AMD driver profiles), which is where the DX9 convertor falls short.

Reply 4 of 4, by Dege

User metadata
Rank l33t
Rank
l33t

I have an old BF1942 instance, I don't know how it's modded if at all, but I tried it with dgv 2.83 anyway.

The main menu seems to be displayed in 800x600 @60 Hz, but I have the refresh rates in the display options:

BF1942-Ver-Tue-19-Oct-2004-14-58-45-2024-11-27-19-23-56.png

I chose 800x600 @72 Hz, and it works accordingly:

BF1942-Ver-Tue-19-Oct-2004-14-58-45-2024-11-27-19-24-41.png

(I had to force v-sync in dgVoodoo though, or else the game always ran at constant 100 fps.)

All of this is without enabling 'enumerate refresh rates'. The applications should see the resolution list and refresh rates by the default config in the same way as natively.
"Enumerate refresh rates" is only for forcing a particular refresh rate from dgVoodoo and to see the supported refresh rates in the Cpl.

It's important to note that if you force the resolution through dgVoodoo, or choose 'stretched, keep aspect ratio' as scaling mode (which implicitly forces physical output resolution to the desktop size) then the refresh rates listed to the application are kinda invalid. Say, you select 800x600 @72 Hz in the game options, but you also forces the physical resolution to desktop (e.g. 1280x1024 in my example), then 72Hz is not necessarily supported by your monitor at desktop resolution. So, only the closest refresh rate can be used instead.

Refresh rates are only guaranteed with default settings (scaling mode = unspecified and resolution = unforced, refresh rate = unforced) but the supported display list + refresh rates should always be listed to the application regardless.

That's why I don't understand why you don't have a single one. Don't you force 60 Hz accidentally, with "Enumerate refresh rates" enabled and "resolution = unforced, 60" or sg like that?