VOGONS


dgVodooo 2.8.x and related WIP versions

Topic actions

Reply 101 of 107, by mitradis

User metadata
Rank Newbie
Rank
Newbie

UPD: in Vice City just need to disable the game frame limit (in game menu - video options). And ResX\Y=-1 if using GTAVC.WidescreenFix.

I suggest option for wrapper set affinity mask for game. Many games can work only on one or two cores (or 2 or 4 threads if HT is on).
For example i noticed from the game Blitzkrieg 2 (which not runs if not start with /affinity, because this game not see more 6 threads) if i start Blitzkrieg 2 with /affinity 1 game start but perfomance dramatically bad (because used 1\2 from one physical core). If /affinity 3 (1 + 2) that better but have stutters (because in reality game runs on 1 physical core). If /affinity F (1 + 2 + 4 + 8 = F) that much better (because game use 2 physical core). If /affinity 6 (2 + 4) game can (50% chance) not runs (something with threads between physical cores). F - best choice with HT.

Reply 102 of 107, by Glurak

User metadata
Rank Newbie
Rank
Newbie

So i tryed newest version with dungeon keeper D3DImm and DDraw. Games lunches. Intro Works fine menu works fine. But when you start a game. The game crashes.

Tryed Dungeon Keeper Gold with 3d3 patch

Deeper Dungeon and the Original with D3d Patch 😀

Reply 103 of 107, by Dege

User metadata
Rank l33t
Rank
l33t

I don't have a clue when I will have a new version, so I release the current state as a WIP (mostly fixes for problems I encountered):

=========================
WIP95
=========================

Changes compared to v2.82.3:

  • Fixing vertex clipping in D3D5 (regression) (Jet Moto)
  • Refactoring a lot of code in DDraw to implement resource sharing, to be compatible with MS DDraw (flashing screen in Colin McRae Rally 2)
  • Fixing DDraw clipped cursor problem (like with the config app of game Driver)
  • DD/D3D/8/9 frontend objects consumes less memory
  • Removing paletted texture format support of the GF9800 virtual card
  • Fixing a potential D3D8/9 swapchain leaking bug
  • Implementing some missing validation in D3D Draw methods
  • Fixing a clip coordinate space bug with sst origin lower left in Glide3+
  • Adding a new option DirectXExt\D3D12BoundsChecking (try it if you run into a GPU crash with D3D8/9)

http://dege.fw.hu/temp/dgVoodooWIP95.zip
http://dege.fw.hu/temp/dgVoodooWIP95_dbg.zip

Some explanation for DirectXExt\D3D12BoundsChecking: it's for cases when a D3D8/9 game accesses the vertex shader register array in out-of-bounds (OOB) way (buffer overrun).
It causes a GPU crash with dgVoodoo by default. The fix should not have an option, because D3D8/9 specs are clear about this case, so it should just be implemented in dgVoodoo.
However, according to my profiling, the implementation of bounds checking can cause 8-9% performance drop in certain cases wih certain games. That's a lot.
I cannot optimize it away, the (certain) needed D3D12 call is simply too expensive for extreme frequent usage, at least with my NV driver (did not tested other GPU's).
I only know of 2 games requiring this, The Witcher and Bound by Flame, so I decided to make this feature optional. Enable it if your GPU crashes with the D3D12 backend.

Reply 105 of 107, by Dege

User metadata
Rank l33t
Rank
l33t

I backported some fixes to the lates release, that's what 2.82.4 is about:

=========================
2.82.4
=========================

  • Fixing DDraw bugs (Konami Collector's Series: Castlevania & Contra, Blackstone Chronicles)
  • Workarounding a DDraw internal resource sharing problem
  • Fixing DDraw clipped cursor problem (like with the config app of game Driver)
  • Fixing D3D5 vertex clipping (regression) (Jet Moto)
  • Removing paletted texture format support of the GF9800 virtual card
  • Fixing a potential D3D8/9 swapchain leaking bug
  • Fixing a D3D9 frontend bug (The Mark)
  • Fixing stenciling without a stencil plane in the D3D12 DX backend (Test Drive Unlimited 2)
  • Fixing potential descriptor corruption with sRGB textures in the D3D12 DX backend (Test Drive Unlimited 2)
  • Some minor refactoring in the DX frontent/backends
  • Fixing a clip coordinate space bug with sst origin lower left in Glide3+

http://dege.fw.hu/dgVoodoo2/bin/dgVoodoo2_82_4.zip
http://dege.fw.hu/dgVoodoo2/bin/dgVoodoo2_82_4_dbg.zip

I also updated WIP95 with the latest fixes:

=========================
WIP95.1
=========================

  • Fixing a D3D9 frontend bug (The Mark)
  • Fixing stenciling without a stencil plane in the D3D12 DX backend (Test Drive Unlimited 2)
  • Fixing potential descriptor corruption with sRGB textures in the D3D12 DX backend (Test Drive Unlimited 2)
  • Some minor refactoring in the DX frontent/backends
  • Fixing DDraw bugs (Konami Collector's Series: Castlevania & Contra, Blackstone Chronicles)

http://dege.fw.hu/temp/dgVoodooWIP95_1.zip
http://dege.fw.hu/temp/dgVoodooWIP95_1_dbg.zip

Reply 106 of 107, by Dege

User metadata
Rank l33t
Rank
l33t

I release a new version with the latest fixes and also updated WIP95:

=========================
2.82.5 / WIP95.2
=========================

  • Fixing a bug in the ps.3.0 shader code translator (FFXIII crash)
  • Fixing a bug in the D3D12 backend related to compressed textures (FFXIII Lightning Returns crash)
  • Fixing a DX frontend bug causing missing cutscenes (Ascension to the Throne)

http://dege.fw.hu/dgVoodoo2/bin/dgVoodoo2_82_5.zip
http://dege.fw.hu/dgVoodoo2/bin/dgVoodoo2_82_5_dbg.zip

http://dege.fw.hu/temp/dgVoodooWIP95_2.zip
http://dege.fw.hu/temp/dgVoodooWIP95_2_dbg.zip

Reply 107 of 107, by Krolin

User metadata
Rank Newbie
Rank
Newbie
Dege wrote on 2024-03-19, 12:42:

  • Refactoring a lot of code in DDraw to implement resource sharing, to be compatible with MS DDraw (flashing screen in Colin McRae Rally 2)

Now CMR2 flashes really badly on 2.82.5 after changing in-game resolution (Options -> Graphics -> Advanced Graphics -> Display Mode). I'm using SilentPatchCMR2 and flashing only occurs when I set "Window=0" in SPCMR2.ini (I prefer forcing windowed mode through dgVoodoo because SilentPatch "Window=1" performs horribly).