protonscr

OptiScaler is failing to create a DX12 device in FFXIV

dxvkclosed not a bugskill issue
doitsujin/dxvk#5355 · opened 2025-12-01 by MaxiTornado · updated 2026-01-10 · 13 comments · github
1 matching comments, n / p to jump
MMaxiTornado 2025-12-01 github

Software information

Final Fantasy XIV Online, full game on steam, with Dalamud (but also without). OptiScaler loaded through winmm.dll.

System information

  • GPU: Radeon 6800
  • Driver: Mesa 26.0
  • Wine version: 10
  • DXVK version: 2.7.1

I apologise, but my subscription ran out, so I can't actually log in at the moment, and I don't wanna make a free trial account just for this. I did look at Steam and OptiScaler logs, and there was stuff like:
warn: DxgiFactory::QueryInterface: Unknown interface query
warn: CreateDXGIFactory2: Ignoring flags
[23:21:32.345926] [E] IFeature_Dx11wDx12::CreateDx12Device Can't create device: 80004002
[23:21:32.345926] [E] IFeature_Dx11wDx12::BaseInit QueryInterface Dx12Device result: -7fffbffe

But I'm fairly sure the first two shows up even when I'm not trying to force OptiScaler's DX12 modes.

For sanity's sake, I did test out PSO2NG, another DX11 game, and the DX12 upscalers work there just fine, so it's not my PC.

Ddoitsujin maintainer 2025-12-01 github

You need vkd3d-proton for d3d12 support, and a wine build with working shared resource support (which stable wine 10 definitely isn't, wine 10.19 does but then you also need to use git builds of both dxvk and vkd3d-proton since it's all very new, and may still be buggy).

TL;DR just save yourself the trouble and use some sort of Proton (-GE if you want) build, and it should work.

MMaxiTornado 2025-12-01 github

Oh, apologies, I just saw Wine version and put 10. I use Proton-GE-latest from ProtonPlus. I did test older non-GE Proton versions, as well as normal Wine just for a sanity check, with no luck.

MMaxiTornado 2025-12-01 github

Made a free trial account real quick to get logs.

steam-39210.log

OptiScaler.log

apitrace is not working for whatever reason, there's no files in the desktop folder.

BBlisto91 2025-12-01 github

The Proton log has almost no output before it ends with dxvk or vkd3d-proton not even being loaded

MMaxiTornado 2025-12-01 github
Image

MangoHud shows this, so that's uh... Quite incredible.

MMaxiTornado 2025-12-01 github

Okay, I was looking in wineprefix instead of protonprefix, that's why I couldn't find the tracefile.

https://drive.google.com/file/d/1AjyGCf2rM8QmLNCG76G1yHpVFE20JzGD/view?usp=sharing

I let the game run a bit longer in hopes of getting a dxvk-related message in the logs, but no luck.

Someone suggested that I force the Radeon Vulkan ICD into the launch arguments, and that crashes the game with dx11 dll errors.

Ddoitsujin maintainer 2025-12-01 github

yeah something is being obnoxious here and eating our logs, launchers probably aren't exactly being helpful here either (especially if you're using the third-party one). Which of course really isn't helping when those logs are the only thing that could give us a clue what's going on here.

Either way, dxvk itself isn't directly involved with the d3d12 stuff. The FSR4 demo thing works here with current code as well so it shouldn't be a regression on the vkd3d-proton side of things at least.

apitrace is also not useful here since, again, everything that matters is D3D12.

I just saw Wine version and put 10.

Fair, should probably clarify the issue template to ask for Proton or Wine version instead.

MMaxiTornado 2025-12-01 github

I did have the idea to try to use the native launcher instead of XIVLauncher, but sadly the native launcher only allows you to log into your Steam account, so I can't use this throwaway one there.

I don't know what the demo is, what I personally did was grab the int8 FSR4 dll, force the FSR4 update in OptiScaler's .ini and the Proton launch command, and as I've said, in PSO2NG it just works. So I know it works on my current setup, with DX11 games. Meaning it's the game.

MMaxiTornado 2025-12-01 github

steam-default.log

Okay, so, even though the 39210.log doesn't show DXVK, steam-default.log does. So it's there. You may be able to use the APITrace after all. Still no luck getting dx11 or dxgi logs, though.

MMaxiTornado 2025-12-03 github

ffxiv_dx11_d3d11.log
ffxiv_dx11_dxgi.log

After a lot of trial and error, it suddenly just works. Here's the DX logs.

MMaxiTornado 2025-12-29 github

SOLVED!

You need to add d3d12 and d3d12core to Wine DLL overrides, and it will work. Game uses whatever DX12 support is built into base wine instead of VKD3D.

FfebLey 2026-01-09 github

SOLVED!

You need to add d3d12 and d3d12core to Wine DLL overrides, and it will work. Game uses whatever DX12 support is built into base wine instead of VKD3D.

I'm trying to figure out how to get this running in XIVLauncher-RB, since you can freely set launch parameters and use Proton instead of Wine.

How exactly did you do this? Did you just install the Trial via Steam and added this to your launch arguments?

WINEDLLOVERRIDES="d3d12,d3d12core=n,b" %command%
MMaxiTornado 2026-01-10 github

I added it to the Wine DLL overrides inside XIVLauncher's dedicated section for it. I was later also told by the person that solved it that it probably requires Dalamud to be enabled for some reason.