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.
Tool will show overlay when it installed correctly, use default hotkey Ctrl+Alt+N to toggle its mode (hide/show)
Expect some minor crashes / visual bugs.
Note: project will be achived when guild wars 2 dx11 beta ends, no support for other games are planned/in works.
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
Using with other addons and overlays
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
Bug
Game/installer are not starting
Troubleshooting
Update MSVC
Bug
Nothing happens when installed
Troubleshooting
Ensure that d3d9.dll is in game root folder or bin64 folder. Then try using this https://github.com/megai2/d912pxy/wiki/Removing-compat-flags
Troubleshooting
Case #1: Game crashes/hangs/not starting
Case #2: Visual errors
Case #3: Unnatural performance drops