Skip to content

DirectX9 to DirectX12 API proxy for Guild Wars 2

License

Notifications You must be signed in to change notification settings

Squall-Leonhart/d912pxy

 
 

Repository files navigation

d912pxy - "DirectX9 to DirectX12 API proxy for Guild Wars 2"

d912pxy is a way to make games that use DirectX 9 use DirectX 12 instead, without changing any game code.

This is specifically designed for Guild Wars 2. You can try to use it with other games; it might work.

Expect some minor crashes / visual bugs.

Current Version Github All Releases Build status

WARNING: USE OF THIS SOFTWARE IS ENTIRELY AT YOUR OWN RISK!

Showcase

Profiling shows that the API overhead for d912pxy is up to 86% (r255,custom config) less than that of plain DirectX9. Real performance differs based on the scene and the hardware.

Benchmarking results on i7-7700/GTX960:

CPU-bound scenario

(running Mistlock Sanctuary with custom config)

@5.5k batches, all max, 1080p, v0.9.9.3a

dx9
  min FPS: ~6.2
  max FPS: ~24.1
dx12
  min FPS: ~20.9
  max FPS: ~31.5
boost:
  min FPS: ~237%
  max FPS: ~30%
  
gathered by performance data accumulation and interpolation

GPU-bound scenario

(1h fractal runs)

@all max, 1080p, v0.9.6.2a

16.4% to 2.5% less frame time

calculated based on API profiling & metrics data

This is affected by performance recording, and should be better in normal situations

DX12:

https://cdn.discordapp.com/attachments/477036595019644928/539417113593380865/unknown.png

DX9:

https://cdn.discordapp.com/attachments/477036595019644928/539417612501647360/unknown.png

Video by reddit u/moriz0, running WvW in 4k: https://www.youtube.com/watch?v=RQAB7Ma20Ow&

Installing

Base guide (EN)

Using with other addons and overlays

Translated guides:

RU

FR

CN

Known bugs

Bug:

Fullscreen/Alt+Enter crashing/hanging my game.

Troubleshooting:

Avoid using fullscreen mode and Alt+Enter mode switching due to DXGI limitations. While it works and even recovers from DXGI deadlock, this is not 100% safe. To recover from this bug manually, do soft-reboot: use Ctrl+Alt+Delete -> Logout.

Bug:

Crashes with 3-rd party tool/overlay/addon

Troubleshooting:

Check is your tool/overlay/addon compatible with d912pxy here. If you see no comments for your case, report crash

Bug:

Pop-ins/slow loading/missing objects

Troubleshooting

This is normal for clean/first install as tool generates shader cache from ground up. After shader cache is generated, load times will be much faster. If you want to eleminate this problem once and for all, use PSO precompile and/or ready-to-use shader packs

Troubleshooting

Case #1: Game crashes/hangs

Case #2: Visual errors

Case #3: Unnatural performance drops

Support the developer

WMZ: 442298672293

Bitcoin: 1B46eQtKUcvSLyz1F8QxKcdHACAXbuXGgM

Patreon: https://www.patreon.com/d912pxy

Paypal: megai2@ya.ru

About

DirectX9 to DirectX12 API proxy for Guild Wars 2

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 79.7%
  • C 19.8%
  • Other 0.5%