Hardware raytracing
This page will serve as a guide to the current state of Hardware raytracing support on Linux as well as provide information on how to set everything up.
In all cases it is assumed you will be running the game through Proton, VKD3D is required, DXVK will not work.
AMD
AMD RDNA2 GPUs offer hardware raytracing support through onboard compute units, current performance is mixed.
- GPU - AMD RDNA2 series or newer
- Driver - mesa 22.3 or newer, amdvlk, amd-vulkan-prefixesAUR
Usage
Use the following environment variables:
VKD3D_CONFIG=dxr11,dxr RADV_PERFTEST_RT=1
Intel
Intel ARC GPUs offer hardware raytracying support through onboard TSUs, current performance is mixed.
- GPU - Intel ARC GD/2 series or newer
- Driver - mesa 22.3 or newer, vulkan-intel
- Kernel - linux 6.0 or newer, linux-headers and linux-firmware (firmware is needed for GuC support)
Usage
Use the following environment variables:
VKD3D_CONFIG=dxr11,dxr
NVIDIA
NVIDIA's raytracing implementation for Linux is pretty much on par with Windows, that is to say, with supported hardware and the correct drivers RTX works well on Linux.
- GPU - Any card with the RTX moniker (RTX 2060+, RTX 3050+, RTX 4050+)
- Driver - nvidia 510.60.02 or newer with nvidia-utils and nvidia-settings (with their lib32 variants)
Usage
Use the following environment variables:
VKD3D_CONFIG=dxr11,dxr PROTON_ENABLE_NVAPI=1 PROTON_ENABLE_NGX_UPDATER=1
Additionally, the following optional variable can be set:
PROTON_HIDE_NVIDIA_GPU=0
- This configuration will enable support for both Deep Learning Super Sampling and RTX.
PROTON_HIDE_NVIDIA_GPU
used to be required to fix a bug where proton would always report an AMD GPU. This bug has been fixed so the variable should no longer be needed but should be tried if you have issues enabling either DLSS or RTX.
Testing
Install the package raytracinginvulkan-gitAUR then from a terminal run:
$ /opt/raytracinginvulkan/bin/RayTracer