VOGONS


dgVoodoo 2 for DirectX 11

Topic actions

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

Reply 880 of 3949, by Dege

User metadata
Rank Oldbie
Rank
Oldbie

Ok, thanks. The DDraw incompatibility is fixed, but there is another issue: this game compresses its textures into DXTC by DDraw so it still doesn't work with dgVoodoo. At least there is a reason to write my own S3TC compressor that was missed in the latest version. (if I can do that at all legally as S3TC compression is patented, maybe an S2TC variant should be used)
(It's really strange that whenever I consider implementing a feature delayable because of thinking noone utilizes that, then the next game offered for trying with dgVoodoo uses that after all. 😀 😀 )

Ok, I tried replacing the glide.dlls of the Daum build of Dosbox with dgVoodoo 2 (this works fine with nglide) to play Descent 2 but there is the same issue so I guess the 3DFX part of dgVoodoo 2 doesnt work at all on my system for some reason.

Then I guess you have the same issue like Walt, roughly a years ago, the Glide wrapper crashes your driver (ATI HD 7xxx series). 🙁

Doesn't Windows pop up a bubble saying that the display driver had to be restarted?
(I submitted twice this issue with a simple repro application to the ATI bug submitting site but they obviously don't care. The only solution were adjusting dgvoodoo somehow to the buggy driver.)

Reply 881 of 3949, by Dege

User metadata
Rank Oldbie
Rank
Oldbie
Here's an interesting test for old D3D. Highway Bowler: http://www.oneonlinegames.com/download/highway-bowler […]
Show full quote

Here's an interesting test for old D3D. Highway Bowler:
http://www.oneonlinegames.com/download/highway-bowler

It's a freeware Japanese doujin game, and quite funny for the first few minutes 😁

Performance is very good and forcing texture filtering seems to work very well. However, the wrapper seems to cause artifacts around the edge of the ball/bomb regardless of which settings are used.

It was a colorkeying issue, just fixed that.

Reply 882 of 3949, by teleguy

User metadata
Rank Member
Rank
Member
Dege wrote:

Ok, thanks. The DDraw incompatibility is fixed, but there is another issue: this game compresses its textures into DXTC by DDraw so it still doesn't work with dgVoodoo. At least there is a reason to write my own S3TC compressor that was missed in the latest version. (if I can do that at all legally as S3TC compression is patented, maybe an S2TC variant should be used)
(It's really strange that whenever I consider implementing a feature delayable because of thinking noone utilizes that, then the next game offered for trying with dgVoodoo uses that after all. 😀 😀 )

Maybe it can be turned off? I noticed Eurofighter creates a registry key "Compress".

As for it being patented, aren't there fan created renderers for Unreal that include S3TC compression? Edit: And for Unreal Tournament, Deus Ex and Rune as well.

Then I guess you have the same issue like Walt, roughly a years ago, the Glide wrapper crashes your driver (ATI HD 7xxx series). 🙁

Doesn't Windows pop up a bubble saying that the display driver had to be restarted?
(I submitted twice this issue with a simple repro application to the ATI bug submitting site but they obviously don't care. The only solution were adjusting dgvoodoo somehow to the buggy driver.)

No, there's no Windows message. With the Fighter sim games there's only a black screen with the sound slightly looping. With Dosbox there's a black window with the 3Dfx logo in the lower right corner and the system stops responding completely.

I replaced the 7970 with a 290x btw because it was apparently faulty.

Reply 883 of 3949, by Expack3

User metadata
Rank Member
Rank
Member

Space Hack has issues with displaying anything but edge textures (they're the only textures visible in the sample image) when using dgVoodoo 2, regardless of in-game or dgVoodoo 2 settings. Also, the intro and outro videos, which play normally when not using dgVoodoo 2, will not play. Thankfully, the former issues are also present in the game's demo release.

If ReShade's depth buffer display is any indication, there seems to be some odd depth buffer access going on with the GUI (the unchanging parts at the top/bottom of the GIF). Doubt that's related to that issue - or even whether the depth buffer access oddity is an issue at all, given how the game looks and runs fine without dgVoodoo 2 (though I can't test the depth buffer the same way since the lowest DX version ReShade supports is DX8, while dgVoodoo 2 'bumps' up such games to DX11 as far as ReShade's concerned) - but I thought I'd bring it up anyways.

Last edited by Expack3 on 2015-06-22, 15:13. Edited 2 times in total.

Reply 884 of 3949, by flamepanther

User metadata
Rank Newbie
Rank
Newbie
Dege wrote:

It was a colorkeying issue, just fixed that.

Awesome! 😁

teleguy wrote:

As for it being patented, aren't there fan created renderers for Unreal that include S3TC compression? Edit: And for Unreal Tournament, Deus Ex and Rune as well.

If there are, that doesn't necessarily imply anything about their legality, unfortunately. A lot of fan projects don't care about copyright or software patents, so long as they stay "under the radar" so to speak.

By the way, I'm really happy that dgVoodoo 2 exists. It's the only Glide wrapper I've tried so far that works with nVidia's stereoscopic 3D drivers. I'm having a blast finally playing Rayman 2 in 3D again, and looking forward to testing stereo 3D on some older D3D games once it can do resolution overriding on them. 😎

Last edited by flamepanther on 2015-06-22, 14:55. Edited 1 time in total.

Reply 885 of 3949, by teleguy

User metadata
Rank Member
Rank
Member
flamepanther wrote:
teleguy wrote:

As for it being patented, aren't there fan created renderers for Unreal that include S3TC compression? Edit: And for Unreal Tournament, Deus Ex and Rune as well.

If there are, that doesn't necessarily imply anything about their legality, unfortunately. A lot of fan projects don't care about copyright or software patents, so long as they stay "under the radar" so to speak.

Yes, but that shows that the patent holders are not too keen on enforcing it and dgVoodoo is sort of a no profit fan project as well.

Reply 886 of 3949, by Dege

User metadata
Rank Oldbie
Rank
Oldbie
Expack3 wrote:

Space Hack has issues with displaying anything but edge textures (they're the only textures visible in the sample image) when using dgVoodoo 2, regardless of in-game or dgVoodoo 2 settings. Also, the intro and outro videos, which play normally when not using dgVoodoo 2, will not play. Thankfully, the former issues are also present in the game's demo release.

Do the videos work if you try the game in forced windowed mode through dgVoodoo? If yes then it's a GDI/DDraw issue again.
I could only try the demo and missing textures were a special DXTC texture creation issue (incompatibility), now just fixed it and the game seems to run fine (altough it's worth to force vsync because the game renders at max speed without it).

Expack3 wrote:

If ReShade's depth buffer display is any indication, there seems to be some odd depth buffer access going on with the GUI (the unchanging parts at the top/bottom of the GIF). Doubt that's related to that issue - or even whether the depth buffer access oddity is an issue at all, given how the game looks and runs fine without dgVoodoo 2 (though I can't test the depth buffer the same way since the lowest DX version ReShade supports is DX8, while dgVoodoo 2 'bumps' up such games to DX11 as far as ReShade's concerned) - but I thought I'd bring it up anyways.

It's not related to it, the game renders each frame at full screen size then overwrites the upper and lower part with its HUD elements.

Maybe it can be turned off? I noticed Eurofighter creates a registry key "Compress".

Unfortunately it cannot be. This key is defaulted to 0 in the game registry (which suggest meaning 'false' to me) but it didn't affect anything when I tried it with other values. Even the game binaries don't contain the 'COMPRESSED' string so this seems to be unused.

As for it being patented, aren't there fan created renderers for Unreal that include S3TC compression? Edit: And for Unreal Tournament, Deus Ex and Rune as well.

I think yes, and

A lot of fan projects don't care about copyright or software patents, so long as they stay "under the radar" so to speak.

I hope I will fly under the radar. (I don't know the exact copyright blablas about this, but MS DirectDraw contains S3TC technology legally since Microsoft paid for the patent and I'm duplicating the functionality of DirectDraw so yet it is possible that I could include it in dgVoodoo legally, but I don't know because dgVoodoo DX emulation itself smells illegal to me as no other than MS could implement their own API's:) )

Reply 888 of 3949, by flamepanther

User metadata
Rank Newbie
Rank
Newbie

Reading around on some developer forums, it sounds like the licensing terms apply to whomever is implementing S3TC support into their drivers or API (nVidia, Microsoft, Nintendo, Sony), and that game developers et al are safe. That would mean the patent mostly poses a problem for FOSS projects like Mesa, the Nuveau driver project, etc. that are implementing the main API or drivers themselves. If that's so, then it seems to me like you'd be covered by Microsoft's upstream license the same as if you were a game developer, since it can't work without DX10/11.

But that's relying on the word of just a bunch of guys on the Internet.

Reply 889 of 3949, by t9999clint

User metadata
Rank Member
Rank
Member

Thanks for your work on this, I can't seem to get dgvoodoo2 working on my amd r9 290.
Is there a site where I can download the previous versions of the DGVoodoo2 wrapper so I can do a little troubleshooting to see which revision this bug has started?
I've already rolled back to an earlier version of the amd drivers and that didn't seem to help.

It works on my Nvidia 760 just fine so there's some sort of issue with the glide wrapper and the AMD driver. The driver crashes whenever I try to play Dues Ex GOTY and Slave Zero. I haven't tested with other games yet.
Dues Ex and Slave Zero work with the D3D wrapper just fine.

*edit, this may be another instance of the AMD 7xxx series bug, even though the r9 290 is a different series. Probably the same driver code though...

My Youtube Channel: https://www.kor.ninja/
My Soundfont Project: K.O.R. Soundfont Project V.5.0
My Soundcloud Page: https://soundcloud.com/clint-theriault

Reply 890 of 3949, by The Master

User metadata
Rank Newbie
Rank
Newbie

Hello,

Maybe som,ebody could help me with my Problem.

I tried dgVoodoo 2 (Newest Version) with Wing Commander Prophecy. Grafik is ok (no false lansflares like open gl wrapper) but WC5 is the only game i could not change the game resolution. With other Games it works without a Problem.

With a OpenGL Wrapper i could set the game to my Desktop Resolution (1920x1200) but then there are broken LensFlares 🙁.

Any Idea?

System:
Win 10 x64 10147 (Testet under Win 8.1 with Same Problem)
16Gb Ram
Geforce 970
Game on a SSD.(i know overkill)

Reply 891 of 3949, by Stiletto

User metadata
Rank l33t
Rank
l33t
t9999clint wrote:

Thanks for your work on this, I can't seem to get dgvoodoo2 working on my amd r9 290.
Is there a site where I can download the previous versions of the DGVoodoo2 wrapper so I can do a little troubleshooting to see which revision this bug has started?
I've already rolled back to an earlier version of the amd drivers and that didn't seem to help.

http://dege.freeweb.hu/dgVoodoo2.html

Otherwise, the recent WIP builds that go between some of these at http://dege.freeweb.hu/dgVoodoo2.html are linked in this current thread in previous posts.

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 892 of 3949, by teleguy

User metadata
Rank Member
Rank
Member
Dege wrote:

Then I guess you have the same issue like Walt, roughly a years ago, the Glide wrapper crashes your driver (ATI HD 7xxx series). 🙁

Doesn't Windows pop up a bubble saying that the display driver had to be restarted?

I tried Wing Commander Prophecy. The intros worked fine but the menu was totally scrambled (like a sliding block puzzle). This time I got the "AMD driver has been recovered" message.

Can't you code some kind of workaround? AMD usually takes a long time to fix driver issues, if at all, unless there is a huge public outcry.

Reply 893 of 3949, by Dege

User metadata
Rank Oldbie
Rank
Oldbie
The Master wrote:
Hello, […]
Show full quote

Hello,

Maybe som,ebody could help me with my Problem.

I tried dgVoodoo 2 (Newest Version) with Wing Commander Prophecy. Grafik is ok (no false lansflares like open gl wrapper) but WC5 is the only game i could not change the game resolution. With other Games it works without a Problem.

With a OpenGL Wrapper i could set the game to my Desktop Resolution (1920x1200) but then there are broken LensFlares 🙁.

Any Idea?

System:
Win 10 x64 10147 (Testet under Win 8.1 with Same Problem)
16Gb Ram
Geforce 970
Game on a SSD.(i know overkill)

Glide or D3D renderer? I've tried it with both and worked fine. Since the game doesn't let you to set the resolution, I suppose you use Glide with a forced resolution.
Lens flare were broken in the sense that I saw a big crosshair on them.
The only issue I experienced that dgvoodoo's ddraw and Glide couldn't work together at startup.

I tried Wing Commander Prophecy. The intros worked fine but the menu was totally scrambled (like a sliding block puzzle). This time I got the "AMD driver has been recovered" message.

Can't you code some kind of workaround? AMD usually takes a long time to fix driver issues, if at all, unless there is a huge public outcry.

I hope it was the Glide renderer. It seems some ATI drivers (for HD7xxx, R9) has issues with it.
I suspect it has to do sg with Glide shaders, the driver cannot translate (one of) them and gets into infinite loop(?).
It shouldn't be a problem because the shader binaries are compiled by MS FXC, they aren't "handmade".
The only way trace it down and workaround this is commenting out parts of the shader(s) step by step and see if it still drives the driver into a buggy path.
I don't have such an ATI card unfortunately, ... but maybe maybe I could borrow one from my workplace somehow.

Reply 894 of 3949, by teleguy

User metadata
Rank Member
Rank
Member
Dege wrote:
Glide or D3D renderer? I've tried it with both and worked fine. Since the game doesn't let you to set the resolution, I suppose […]
Show full quote

Glide or D3D renderer? I've tried it with both and worked fine. Since the game doesn't let you to set the resolution, I suppose you use Glide with a forced resolution.
Lens flare were broken in the sense that I saw a big crosshair on them.
The only issue I experienced that dgvoodoo's ddraw and Glide couldn't work together at startup.

I hope it was the Glide renderer. It seems some ATI drivers (for HD7xxx, R9) has issues with it.
I suspect it has to do sg with Glide shaders, the driver cannot translate (one of) them and gets into infinite loop(?).
It shouldn't be a problem because the shader binaries are compiled by MS FXC, they aren't "handmade".
The only way trace it down and workaround this is commenting out parts of the shader(s) step by step and see if it still drives the driver into a buggy path.
I don't have such an ATI card unfortunately, ... but maybe maybe I could borrow one from my workplace somehow.

Yes, the Glide renderer.

I'm using the GoG version. Nglide is already included and there are also crosshairs in the lensflares btw.

Last edited by teleguy on 2015-06-24, 16:01. Edited 1 time in total.

Reply 895 of 3949, by The Master

User metadata
Rank Newbie
Rank
Newbie
Dege wrote:

Glide or D3D renderer? I've tried it with both and worked fine. Since the game doesn't let you to set the resolution, I suppose you use Glide with a forced resolution.
Lens flare were broken in the sense that I saw a big crosshair on them.
The only issue I experienced that dgvoodoo's ddraw and Glide couldn't work together at startup.

So with a fresh install from CD, I could change the resolution *yeah*, but the lens flare is still broken (cross/crosshair).
MSAA also worked and it looks perfect now.

All with the Glide renderer.
I have the GOG version too, here is the same problem with the nGlide wrapper. Cross problem 🙁

Maybe there is a fix for this. Without the lens flares, the game lost atmosphere 🙁.

Thanks

Reply 896 of 3949, by teleguy

User metadata
Rank Member
Rank
Member

I noticed the resolutions in JK top out at 2048x1536 (the maximum earlier versions of DirectX allowed) with dgvoodoo but if I use WineD3D even the Downsampling resolutions I set up are available. Any chance support for higher resolutions can be added?

There's also an issue with the GOG version only showing the ModeX resolutions. I sent you a pm about it.

Reply 897 of 3949, by Expack3

User metadata
Rank Member
Rank
Member

On the GOG.com version of Return to Krondor (only version I have access to), the cinematics are offset so far to the bottom-right of the screen, they go off it completely! This is especially evident if you modify the Cinemat section RTKRONDOR.INI to this:

[Cinemat]
Playback=1
Stretch=1

Native/dgVoodoo 2 windowed
RtK%202015-06-27%2020-02-37-47.png

dgVoodoo 2 fullscreen (bloom is in video, not caused by dgVoodoo 2)
RtK%202015-06-27%2020-02-03-03.png

Reply 898 of 3949, by teleguy

User metadata
Rank Member
Rank
Member
teleguy wrote:

Steam versions of X-Wing, Tie Fighter and XvT have been released recently. In native DirectX only software mode is available. The games come with their own ddraw.dll wrapper and when you replace it with dgVoodoo's the games just fail to launch. However I managed to enable 3D mode using WineD3D so apperantly it hasn't been deactivated like the GoG edition and the problems with 3D acceleration are probably some sort of incompatibility.

Dege, can you take a look?

I finally found a way to fix it. Someoneone on the Steam forums mentioned they got a "DDraw init failed at 5" message with dgVoodoo.

I remembered I got the same error message with the GOG version and dgvoodoo before I patched it. I figured that probably means the Steam version also sets lpguid to 2 which is DirectDraw EmulationOnly. Unfortunately I'm not able to patch it because Steam or Disney in their infinite wisdom decided to encrypt the exe.

So I looked at aqrit's directdraw wrapper:
http://bitpatch.com/ddwrapper.html

The source code is freely available and with a few minor modifications I was able to overwrite lpguid and enable 3D acceleration.
http://www.file-upload.net/download-10724679/ … eguy-l.zip.html

Usage:
Extract both files to the game directory.

On my system that was enough to make hardware acceleration work (both in XvT and Tie Fighter) however if you want use dgvoodo extra steps are needed.

Extract D3DImm.dll and dgVoodooSetup.exe to the game directory.

(If you use dgvoodooSetup.exe make sure the conf file it creates is also placed in the game directory.)

DDraw.dll has to be put in a different directory! for example C:\dgVoodoo\ .

Then open aqrit.cfg and replace
RealDDrawPath =AUTO
with
RealDDrawPath = C:\dgVoodoo\ddraw.dll

Attachments

Last edited by teleguy on 2016-01-17, 20:48. Edited 1 time in total.

Reply 899 of 3949, by Dege

User metadata
Rank Oldbie
Rank
Oldbie

Sorry for being inactive recently, but I got a lot amount of other works, fallen on my neck, so I can hardly get close to developing dgVoodoo with full speed. 🙁

In spite of that in the last 2 days I whipped up the first version of my texture compression algorhytm(s).
It works surprisingly good, so Eurofighter Typhoon (demo) also seems to work pretty good now. 😀
I have to do some more work to have it in its final form but now I adressed one of the main areas on my todo-list.

I finally found a way to fix it. Someoneone on the Steam forums mentioned they got a "DDraw init failed at 5" message with dgVoodoo.

I remembered I got the same error message with the GOG version and dgvoodoo before I patched it. I figured that probably means the Steam version also sets lpguid to 2 which is DirectDraw EmulationOnly. Unfortunately I'm not able to patch it because Steam or Disney in their infinite wisdom decided to encrypt the exe.

It sounds great!
But, according to that, dgVoodoo doesn't work in EmulationOnly mode? I have to check that!

I'll reply pm's soon.