VOGONS


First post, by eddman

User metadata
Rank Oldbie
Rank
Oldbie

I know there is an option in dgVoodoo to enable vsync, however, do you think you could add one to force disable it? I'm trying to troubleshoot a D3D8 game's built-in vsync and FPS limiter, but cannot disable vsync. I've tried doing it through the nvidia app, but doesn't seem to work.

Reply 1 of 5, by Dege

User metadata
Rank l33t
Rank
l33t

I don't think it'd be particularly useful in general but I could give you a D3D8 build with vsync disabled for that specific case, to experiment with the game.

Reply 2 of 5, by eddman

User metadata
Rank Oldbie
Rank
Oldbie

I already managed to do it for D3D8 by combining dgVoodoo with Special K, but am having a lot of trouble getting that combo to work with D3D7 and older. Those games simply refuse to launch. That was a bad assumption on my part. The problematic game is Thief 1 (It does more-or-less work with only dgVoodoo). Tried another game, Spider-man 2001, and the combo does work.

Please reconsider if you could make vsync disabling a general dgVoodoo feature. It's rather niche, yes, but it does have its uses. One such case is VRR displays. Usually disabling vsync and capping the fps gives a better, smoother experience.

If not, as an alternative, are you ok with trying to figure out why dgVoodoo+Special K is so problematic for pre-D3D8? I asked on the Special K discord server, but haven't received a response from the devs; probably are not interested.

EDIT:

I'd have to test more to have a clearer picture, but after testing a few, it seems the interoperability is hit-and-miss and rather problematic for pre-D3D8 games.

EDIT2:

If none of the above, sure, I can use one-off exes with vsync disabled.

Reply 3 of 5, by Dege

User metadata
Rank l33t
Rank
l33t
eddman wrote on Yesterday, 20:38:

I already managed to do it for D3D8 by combining dgVoodoo with Special K, but am having a lot of trouble getting that combo to work with D3D7 and older.

Tbh, I can't see any reason why they don't work with SpecialK. I don't really know SpecialK but a dgVoodoo-wrapped D3D7 game is (should) be the very same DX11/12 game as a D3D8 one from SK's viewpoint.
There is no difference in the implementation of the base layers (like the backend API initialization, the image presenters, etc.) of D3D7 and 8, in fact they share a common code base.
I think it'll be easier for now to give you a vsync-free x86 build from the DX dll's (2.87.3).

Reply 4 of 5, by eddman

User metadata
Rank Oldbie
Rank
Oldbie

It's not all pre-d3d8 games though; tested a few others and they work fine. This is what Special K's Thief log says:

07/21/2026 17:01:14.000:    Unhandled Top-Level Exception (c00000fd):

-----------------------------------------------------------
[! Except !] << EXCEPTION_STACK_OVERFLOW >>
-----------------------------------------------------------
[ Thread ] ~ Name.....: "[SK] DXGI Hook Crawler"
[ FaultMod ] # File.....: 'C:\WINDOWS\System32\DriverStore\FileRepository\nvmdi.inf_amd64_97fbf7e42e9512b0\nvwgf2um.dll'
[ FaultMod ] * EIP Addr.: nvwgf2um.dll+00C6C9C7h
[StackFrame] <-> Eip=5dcac9c7h, Esp=0241f2c8h, Ebp=0241f2d0h
[StackFrame] >-< Esi=0241f330h, Edi=000b0028h
[ GP Reg ] eax: 0x02412000 ebx: 0x691076e0
[ GP Reg ] ecx: 0x02412c34 edx: 0x00060001
[ GP Flags ] EFlags: 0x00010206
Dege wrote on Today, 11:40:

I don't really know SpecialK

It offers a lot of features, disabling vsync being one of them, and has an OSD showing the FPS, exact vsync mode, etc. which is why I tried to use it. It doesn't have native support for D3D8 and older, hence the need to use dgVoodoo.

Reply 5 of 5, by Dege

User metadata
Rank l33t
Rank
l33t

Ok,I made the build:

https://dege.fw.hu/temp/dgVoodoo_2_87_3_dx_vs … nc_disabled.zip

eddman wrote on Today, 17:04:
It's not all pre-d3d8 games though; tested a few others and they work fine. This is what Special K's Thief log says: […]
Show full quote

It's not all pre-d3d8 games though; tested a few others and they work fine. This is what Special K's Thief log says:

07/21/2026 17:01:14.000:    Unhandled Top-Level Exception (c00000fd):

-----------------------------------------------------------
[! Except !] << EXCEPTION_STACK_OVERFLOW >>
-----------------------------------------------------------
[ Thread ] ~ Name.....: "[SK] DXGI Hook Crawler"
[ FaultMod ] # File.....: 'C:\WINDOWS\System32\DriverStore\FileRepository\nvmdi.inf_amd64_97fbf7e42e9512b0\nvwgf2um.dll'
[ FaultMod ] * EIP Addr.: nvwgf2um.dll+00C6C9C7h
[StackFrame] <-> Eip=5dcac9c7h, Esp=0241f2c8h, Ebp=0241f2d0h
[StackFrame] >-< Esi=0241f330h, Edi=000b0028h
[ GP Reg ] eax: 0x02412000 ebx: 0x691076e0
[ GP Reg ] ecx: 0x02412c34 edx: 0x00060001
[ GP Flags ] EFlags: 0x00010206
Dege wrote on Today, 11:40:

I don't really know SpecialK

It offers a lot of features, disabling vsync being one of them, and has an OSD showing the FPS, exact vsync mode, etc. which is why I tried to use it. It doesn't have native support for D3D8 and older, hence the need to use dgVoodoo.

Oh, yeah, sure, I know what it is for. I just don't use it so I don't have much experience with it.
But I remember that a few years ago one of the devs issued a bug report for dgVoodoo. I claimed that it was not a dgv bug and the conversation got discontinued.