Linux Gaming Repair Center

DXVK cannot find a usable Vulkan device

Check the DXVK build actually used by the game, its feature requirements and any device filters.

On this page
  1. Requirements belong to a release
  2. Distinguish invisible from unsuitable devices
  3. Use a renderer comparison narrowly
  4. Gather evidence
  5. A controlled test
  6. Related diagnostics
  7. Sources & limitations

Requirements belong to a release

At this source review, the upstream DXVK 3.x driver guide asks for Vulkan 1.4, Wine 10.1 or newer and specified features. The historical DXVK 2.0 release required Vulkan 1.3. These are release-specific requirements, not a universal minimum for every Proton installation. Steam’s chosen Proton bundles its own component revisions; a distribution’s standalone DXVK package may not be involved. Identify the DXVK version in the game log or HUD before judging support. An API version alone does not establish that the selected device exposes every required extension and feature.

Distinguish invisible from unsuitable devices

If the native host sees a hardware Vulkan device while DXVK does not, compare process architecture, sandbox libraries and the environment passed by Steam or the launcher. A DXVK_FILTER_DEVICE_NAME value that matches nothing can exclude every candidate. A remembered device-selection option can also become wrong after hardware or driver changes. Read all rejection messages before the final no-device error: failure to load an ICD is different from a device that is enumerated but lacks required features. A CPU renderer in the list does not prove that the intended GPU initialized.

Use a renderer comparison narrowly

For a Proton game using Direct3D 9, 10 or 11, a temporary WineD3D launch can compare the OpenGL translation path with DXVK. A changed outcome narrows the failing path but does not prove that DXVK itself is defective: the driver, supported features and timing also change. This option does not replace VKD3D-Proton for Direct3D 12. Keep the game build and scene fixed. Installing arbitrary newer DLLs into an existing Proton directory mixes components and removes the release context needed for a useful report.

Gather evidence before changing the system

Run one command at a time in the relevant host or game environment. Read its requirements and interpretation first. The website displays commands and never runs them.

Temporary diagnostic environment

DXVK_LOG_LEVEL=info PROTON_LOG=1 %command%

Requirements: Proton and a game that actually uses DXVK; Steam launch options, not a shell command.

Capture the selected DXVK version and device-rejection context during one Steam launch. Remove both variables afterward. If no DXVK output appears, confirm the game’s rendering API.

Read-only observation

vulkaninfo --summary

Requirements: Vulkan tools and a working user session.

Use this as a host comparison. A different GPU, driver or architecture from the failing game is evidence that the two tests are not equivalent.

A controlled test with a way back

Save the original options and remove a custom DXVK device filter for one attempt. If the game uses Direct3D 9–11, an additional separate test may use PROTON_USE_WINED3D=1 %command%. Never combine this comparison with unrelated changes.

Rollback: Remove PROTON_USE_WINED3D and restore the saved launch options. No DLL replacement or prefix deletion is needed for this comparison.

What this test cannot establish: WineD3D may be slower or render differently. A successful comparison does not establish a permanent fix or support for a newer DXVK release.

Sources and scope

This editorial review uses primary project and distribution references. It does not establish that a fix has been reproduced on your hardware. Installed versions, the game runtime and the selected graphics API can change the result.