pal1000 / mesa-dist-win

Pre-built Mesa3D drivers for Windows
MIT License
916 stars 80 forks source link

RadV doesn't work #83

Open Quackdoc opened 2 years ago

Quackdoc commented 2 years ago

Running an rx580

set VK_ICD_FILENAMES=...\radeon_icd.x86_64.json

..\vkconfig.exe

Vulkan Development Status:

pal1000 commented 2 years ago

Note that VK_ICD_FILENAMES only accepts absolute paths. Also @jpark37 may be able to answer to this as he's the one making the port to Windows.

Quackdoc commented 2 years ago

Giving it an absolute path did not help

jpark37 commented 2 years ago

Open the JSON file itself, and replace "./vulkan_radeon.dll" with ".\\vulkan_radeon.dll" to make the loader happy.

EDIT: I can update Mesa at some point to modify the JSON generation, but it's surprisingly difficult because the Python JSON lib automatically converts backslash to slash for some reason.

EDIT 2: Actually Meson's fault, not Python.

Be aware that RADV on Windows is more or less a null driver. You can't play games with it.

pal1000 commented 2 years ago

I actually have logic fixing the JSON for both RADV and lavapipe post build as I know they were both kinda broken from day 1.

Lavapipe has absolute path in JSON for library_path which is also bad as it's not portable and also has / as separator as well.

jpark37 commented 2 years ago

I have an MR here to try to fix the issue in Mesa itself for RADV: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13461

I hadn't noticed because I was copying files around in a way that made the forward slash work somehow, but I can stop doing that with the backslash, which I noticed the regular NVIDIA driver uses.