VOGONS


dgVoodoo 2 for DirectX 11

Topic actions

  • This topic is locked. You cannot reply or edit posts.

Reply 3400 of 3949, by ZellSF

User metadata
Rank l33t
Rank
l33t

Force 21 works perfectly with resolution forcing (usually limited to 800x600), but I had to hex edit the main exe to point to dgdraw.dll and rename dgVoodoo2's ddraw.dll to dgdraw.dll to get it to work. I'm really curious as to why.

Force21 2017-12-11 20-52-01-56.jpg
Filename
Force21 2017-12-11 20-52-01-56.jpg
File size
491.64 KiB
Views
2119 views
File license
Fair use/fair dealing exception

Star Trek: New Worlds is a bit interesting too, it has some issues with text:

badtext.jpg
Filename
badtext.jpg
File size
81.91 KiB
Views
2119 views
File license
Fair use/fair dealing exception

Here's a good shot courtesy of WineD3D:

goodtext.jpg
Filename
goodtext.jpg
File size
79.11 KiB
Views
2119 views
File license
Fair use/fair dealing exception

Why WineD3D? Because natively the Exit dialog has the same issue. This game probably does something weird with text that's confusing both dgVoodoo2 and Microsoft's current ddraw implementation. Apparently it's also selective about which video cards it will run under, I needed a patch by HeliX666 to get it to run with dgVoodoo2 at all. I would link to it, but it's on an abandonware site.

Freedom Fighters was earlier reported as broken between 2.54 and WIP36. It runs fine here regardless of version, but it crashes in fullscreen mode. Forcing windowed with dgVoodoo2 works fine. Benefits from resolution forcing too (bad UI scaling):

freedom 2017-12-10 21-17-03-78.jpg
Filename
freedom 2017-12-10 21-17-03-78.jpg
File size
352.01 KiB
Views
2191 views
File license
Fair use/fair dealing exception

Fullscreen run log:

Attachments

  • Filename
    freedom.LOG
    File size
    7.96 KiB
    Downloads
    55 downloads
    File license
    Fair use/fair dealing exception

Reply 3403 of 3949, by Ithilin

User metadata
Rank Newbie
Rank
Newbie

Been recently playing some older Nancy Drew games and decided to try out dgvoodoo2 with 'Message in a Haunted Mansion'. Currently it appears incompatible with this error:

'InitDirectDraw(), pSDestSurface() - DDERR_SURFACEBUSY - Access to this surface is being refused because the surface is already locked by another thread.'

This is with the latest WIP39 version of dgvoodoo2.

Reply 3404 of 3949, by UCyborg

User metadata
Rank Member
Rank
Member

If I alt-tab out of GTA: Vice City at any point, when I go back, mouse cursor pops up for a split second at the center of the screen on regular basis.

Arthur Schopenhauer wrote:

A man can be himself only so long as he is alone; and if he does not love solitude, he will not love freedom; for it is only when he is alone that he is really free.

Reply 3405 of 3949, by FulValBot

User metadata
Rank Member
Rank
Member
Ithilin wrote:

Been recently playing some older Nancy Drew games and decided to try out dgvoodoo2 with 'Message in a Haunted Mansion'. Currently it appears incompatible with this error:

'InitDirectDraw(), pSDestSurface() - DDERR_SURFACEBUSY - Access to this surface is being refused because the surface is already locked by another thread.'

This is with the latest WIP39 version of dgvoodoo2.

Windows 10 Build 1709 ?

Reply 3406 of 3949, by Dege

User metadata
Rank l33t
Rank
l33t
galneon wrote:

Dege,

I was just posting some wrapper information as an alternative in this thread requesting integer scaling for Nvidia GPU drivers and had to complicate my guide for dgVoodoo 2 a bit by detailing the binary vs text dgVoodoo.conf overwrite problem when using a game-local dgVoodoo.conf binary saved via the Control Panel. I know you're probably aware of this issue (some of us discussed it here shortly after the advent of the text dgVoodoo.conf), but I just wanted to remind you of the conflict just in case.

Edit: It looks like me and another user overlooked something when troubleshooting the conf overwrite issue here a few months ago. I thought the text-based .conf deferred to the binary .conf for unspecified values, but the text-based .conf actually goes with default values when not specified (as specified in the readme). I think some confusion could be avoided by renaming the binary version that the CPL saves to dgvoodoo.bin to avoid the risk of overwrites (or renaming the text version to dgvoodoo.ini which would probably be easier), and having the text version defer to it is for unspecified values. Then we could have game-specific bare bones (only the options needed) text-based INIs for advanced options which complement one's regular global CPL settings.

Yes, you're right, it all is a bit confusing in the current state.
I was thinking on the issue and got to the conclusion that it'd be better to completely migrate to ini-based configuration files and treat the binary format as a secondary one.
I mean, the CPL would write INI files instead of a binary one. My only concerns about it is, that, for the time being, the CPL could only write its own template without preserving any formatting/comments from the file it read.

Reply 3407 of 3949, by Dege

User metadata
Rank l33t
Rank
l33t
brad86 wrote:
Bilinear filtering in dgVoodoo or Tomb Raider setup makes no difference from what I can see. […]
Show full quote
Dege wrote:

You don't have bilinear texture filtering enabled, that's why it's noisy.
But even with that enabled, it can be still noisy a bit in case of lacking texture mipmapping.

Bilinear filtering in dgVoodoo or Tomb Raider setup makes no difference from what I can see.

I really don't like filtering textures (blurring) anyway.
Is there no way I can resolve this?

Tomb Raider 1 with TombAti for instance looks fantastic with SSAA and no bilinear.

Having the following settings in the CPL and TR2 setup gives you the unfiltered appearance?
TR2.png

Reply 3408 of 3949, by Dege

User metadata
Rank l33t
Rank
l33t
UCyborg wrote:

If I alt-tab out of GTA: Vice City at any point, when I go back, mouse cursor pops up for a split second at the center of the screen on regular basis.

Must be something with the cursor emulation...
I guess this doesn't happen if you run the game through unspecified scaling mode with unforced resolution.

Reply 3409 of 3949, by Dege

User metadata
Rank l33t
Rank
l33t
Ithilin wrote:

Been recently playing some older Nancy Drew games and decided to try out dgvoodoo2 with 'Message in a Haunted Mansion'. Currently it appears incompatible with this error:

'InitDirectDraw(), pSDestSurface() - DDERR_SURFACEBUSY - Access to this surface is being refused because the surface is already locked by another thread.'

This is with the latest WIP39 version of dgvoodoo2.

Thanks, I've fixed the bug, it will be included in the next WIP.
The game doesn't like Alt-Tab though, it's better to play with 'Disable Alt-Enter...' disabled in order to avoid DDraw device lost.

Reply 3410 of 3949, by Ithilin

User metadata
Rank Newbie
Rank
Newbie

Just tried out the latest WIP40 and am still getting the same error. If you meant WIP41 my mistake.

In reply to FulValBot -- Windows 10 Build 1703. Should be updating this weekend though.

If it helps, my further specs would be an Nvidia Quadro NVS 3100M video card.

Reply 3412 of 3949, by UCyborg

User metadata
Rank Member
Rank
Member
Dege wrote:
UCyborg wrote:

If I alt-tab out of GTA: Vice City at any point, when I go back, mouse cursor pops up for a split second at the center of the screen on regular basis.

Must be something with the cursor emulation...
I guess this doesn't happen if you run the game through unspecified scaling mode with unforced resolution.

It does happen with unspecified scaling mode. There's no need for resolution forcing, it gives all available resolutions plus there's a widescreen patch. I found that with Capture mouse option in dgVoodoo disabled, I can pause the game with ESC, then click somewhere on the secondary screen to get it to lose focus. After switching back, the glitch does not occur. It's important that the mouse cursor isn't on the screen with the game when it loses focus.

GeForce GTX 750 Ti started acting up recently, making my system completely freeze, so I put the old Radeon HD 4890 back in, which still works. I figured running Vice City through dgVoodoo reduces lagspikes, which are kinda distracting.

Edit: One more thing, shouldn't dgVoodoo automatically fallback to software rendering when appropriate hardware isn't available? In VMware virtual machine, you have to explicitly select WARP otherwise it doesn't work.

Arthur Schopenhauer wrote:

A man can be himself only so long as he is alone; and if he does not love solitude, he will not love freedom; for it is only when he is alone that he is really free.

Reply 3414 of 3949, by Dege

User metadata
Rank l33t
Rank
l33t
UCyborg wrote:

Edit: One more thing, shouldn't dgVoodoo automatically fallback to software rendering when appropriate hardware isn't available? In VMware virtual machine, you have to explicitly select WARP otherwise it doesn't work.

I'll install a Win7 into a vm then and have a look what happens. It should work.

lowenz wrote:

Off-topic question for Dege.

I remember, when DX10 libraries have been introduced, that MS said "Every DX10 compliant GPU will be DX11 compliant and the missing features (of the 11.x feature level) will be off-loaded to the CPU.
Am I wrong?

No, I don't remember that.
I think, with the advent of DX11, MS said that all hw with DX10 (and lower, 9.x level) capabilities would be available through DX11, but of course with constraints, to avoid the need for coding against multiple API's (DX9, 10, 11),
so they introduced the term of 'feature level'. It was a nice step.

- DX1-7 had full software capabilites, for vertex and pixel processing (software D3D devices + software blitting in DDraw).
- DX8 was re-designed from scratch to get rid of DDraw and its more and more complicated usage due to the tons of cumulated flags and new resource types + the interfaces they added to DDraw with each major versions. They threw away too much things though, I still remember many people complaining about that back in 2003 on MS forums. 😀 DX8 only kept the software vertex processing, ditching software rasterization (except for the reference rasterizer), altough they left the possibility open for that, one could write a sw rasterizer for using that as a backend in a DX8 device.
- DX9 is roughly the same in that respect.
- DX10: MS got enough of the tons of hw capability flags present in all previous DX versions (to support various gpus from various vendors) and defined a standard (guaranteed features without any software-based support) that had to be supported completely by DX10-compatilbe hw's.
- DX11: update to DX10. But, if they had followed the DX10-way then DX11 could have only be usable for DX11-level hw, so no one would have used it when targeting DX10-level gpus. So, to avoid the strict 'DX API version ---> Hw feature level' binding, they added support for feature levels (much less granulated form of old capability flags). DX11 can use DX9/10/11 level drivers as its backend. Also, it was important for MS to support DX11 even on machines without DX10/11 level gpu, so they wrote a complete software-only DX11-level driver, WARP. It's not the same as the reference driver because WARP targets rendering speed, as much as possible.
- DX12: well, they opened up the hood of DX11, took the parts out of the engine room and gave them to the developers for direct control. This means the additional controller units responsible for the correct co-working of the parts are also ditched, the developer has to re-write them himself/herself. These controller units as I name them, were the background threading for building the command queue, managing virtual video memory page in/out, synchronization between cpu/gpu and such. When I use DX12 I always feel using a more direct DX11, the API itself very resembles DX11. I could say that I'm directly using the internals of DX11 and its not a big improvement, what is more, if one want to achieve the same as with DX11 for a traditional linear-driven rendering then he/she has to do the extra hard work. 😁 I must emphasize, DX12 is not an improvement at all (aside from some things), but only for linear-driven usage. For engines capable of rendering on multiple threads building multiple command lists however it is.

Oh, I've digressed. 😀

Reply 3416 of 3949, by Dege

User metadata
Rank l33t
Rank
l33t
Azarien wrote:

Is there a list of games that can take advantage of dgVoodoo's Phong shading option?
Or at least some known examples 😀

Well, not much that are eye-catching...
On the other hand, I can show you a demo:

http://www.pouet.net/prod.php?which=473

If you enable Phong then you'll see a nice elliptoid-lightened area at the beginning instead of a cragged vertex-lighting one.
Even the 'inner cone area' is visible of the spot light.

Reply 3417 of 3949, by brad86

User metadata
Rank Newbie
Rank
Newbie
Dege wrote:
Well, not much that are eye-catching... On the other hand, I can show you a demo: […]
Show full quote
Azarien wrote:

Is there a list of games that can take advantage of dgVoodoo's Phong shading option?
Or at least some known examples 😀

Well, not much that are eye-catching...
On the other hand, I can show you a demo:

http://www.pouet.net/prod.php?which=473

If you enable Phong then you'll see a nice elliptoid-lightened area at the beginning instead of a cragged vertex-lighting one.
Even the 'inner cone area' is visible of the spot light.

I tried it with Tomb Raider games, but I don't think they benefit from Phong at all.

Reply 3418 of 3949, by kahuna0k

User metadata
Rank Newbie
Rank
Newbie

Hi, since the upgrade to Windows 1709 (Fall creators update) dgVoodoo 2.54 has stopped working for me. I had it working for Comandos 2 and 3, and several old EA Sports titles (Rugby 2008, Tiger Woods 2004, NHL 04 and MVP 2005). Now all of them crash at startup. I've tried changing some options in dgVoodoo Control Panel but I've been unable to run any game with dgvoodoo. I also tried WIP40 with the same result. I've read here about WIP41 but has been unable to find it. Is there any hope or should I go back to the W10 creators update (where all of them were working without problems?)

Thank you!

Reply 3419 of 3949, by ZellSF

User metadata
Rank l33t
Rank
l33t
kahuna0k wrote:

Hi, since the upgrade to Windows 1709 (Fall creators update) dgVoodoo 2.54 has stopped working for me. I had it working for Comandos 2 and 3, and several old EA Sports titles (Rugby 2008, Tiger Woods 2004, NHL 04 and MVP 2005). Now all of them crash at startup. I've tried changing some options in dgVoodoo Control Panel but I've been unable to run any game with dgvoodoo. I also tried WIP40 with the same result. I've read here about WIP41 but has been unable to find it. Is there any hope or should I go back to the W10 creators update (where all of them were working without problems?)

Thank you!

Both Commandos games work fine on Windows 1709 and dgVoodoo2 WIP40. Something else has changed in your system.