In several games under steam using proton 5.x I’ve run into issues where the game will launch and create a window, but the window will have no video in it while steam says the game is playing. After several months of random attempts at fixing the problem a friend pointed me to this github post. In it are instructions that tell you how to disable the intel drivers for vulkan.
It turns out that on my system (a System76 Oryx Pro v5) both the intel and nvidia graphics cards are visible to vulkan at the same time. Of course, as a gamer I typically have my system using the nvidia card for rendering my screen. The problem as you have probably guessed is that vulkan is trying to use that intel card to render my game, instead of the nvidia. To disable it I simply:
- open a terminal
- change directory to /usr/share/vulkan/icd.d
- rename the intel_icd.*.json files to intel_icd.*.json.disabled
That’s it. After doing this I can play many games that were failing to render without issue (Outward, Moons of Madness, Vampyr, SOMA) and likely many others.
UPDATE:
It sounds like vulkan supports an environment variable VK_ICD_FILENAMES that allows you to specify which icd files you want it to load. On PopOS you can create the file: ‘/etc/profile.d/vulkan.sh’ with these contents:
VK_ICD_FILENAMES="/usr/share/vulkan/icd.d/nvidia_icd.json"
export VK_ICD_FILENAMES
This should cause vulkan to use only the nvidia driver’s icd file preventing the need to continually remove the other icd files after each vulkan driver build.