Skip to content
forked from megai2/d912pxy

DirectX9 to DirectX12 API proxy for Guild Wars 2

License

Notifications You must be signed in to change notification settings

darrylo/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.

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

Troubleshooting

Case #1: Things are loading piece-by-piece

Case #2: Game crashes/hangs

Case #3: Visual errors

Case #4: 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.4%
  • C 20.1%
  • Other 0.5%