Description:
I recently moved from Windows 11 to Linux Mint on my Acer Nitro 5 laptop, and I am looking for a good way to continue to play my Windows games on Linux. After trying and failing with VFIO, I am now trying my hand at Wine/Proton. Some people told me about applications like Bottles and Lutris. Bottles sounded more interesting to me because I was looking for more control over the game in terms of sandboxing. After hours of changing settings, installing dependencies, and installing different drivers, I could never get Bottles to run the installed test game (which is a Unity game) using my dGPU (RTX 3060 Laptop gpu). It will happily run it using my integrated Intel graphics, but any attempt like enabling discreet graphics or using the Nvidia Performance mode profile will cause the game to throw an error screen for a second and then quit out. When looking at the logs created by the crash, the error seems to be this:
GfxDevice: creating device client; threaded=1; jobified=1
d3d11: failed to create factory (80004005).
GfxDevice: creating device client; threaded=1; jobified=1
Crash!!!
I spent hours trying all sorts of different nvidia drivers, going into my BIOS to change secure boot, installing different dependencies in the Bottle, changing the settings in the Bottle, adding all sorts of environment variables, reinstalling the Bottles application, trying all 9 runners.
I sorta gave up on Bottles at that time and tried Lutris, which seemed to work almost immediately on my first try. I used DXVK HUD to verify that it was using my dGPU and that Bottles was not using my dGPU. I then tried running the version of the game I installed into a Bottle using Lutris to see if maybe it was installed wrong, but that version of the game runs fine in Lutris so Bottles didn't install the game wrong or anything. I tried to change the settings in Bottles again to more closely match what I could see in Lutris (No virtual desktop, no FSync/ESync, Same runner System Wine v11, No Gamescope etc.) but I can't get Bottles to work my with dGPU.
Steps to Reproduce:
[Step 1]
Create a new Bottle, selecting the Gaming type and setting the runner as sys-wine-11.0
[Step 2]
Install the test game into the Bottle
[Step 3]
Enable discreet graphics or force dGPU. Add DXVK_HUD=1 environment variable
[Step 4]
Attempt to run game. Met with crash.
Expected Behavior:
I expected the game to launch, with the DXVK HUD telling me that it is using my RTX 3060 laptop GPU.
Actual Behavior:
An error screen shows for about 1 second, then the game crashes.
Additional Information:
I am extremely new to Linux in general, so I am very sorry if I am missing something completely obvious. I feel like I am not smart enough to be using Linux after failing so much 😅