Holy schmoley its a new Egee video! I felt the itch to do some tech lately and wanted a simple project to cut my teeth on. Here is a refresh of a video I made years ago that still generates questions.
Hybrid Graphics in 2026
The hybrid graphics situation on Linux has changed a lot in just the past few years! Most distros ship Wayland by default now and explicit sync landed in kernel 6.x so gaming doesn't screen-tear like hell anymore.
However, one downside for gamers is most systems with hybrid graphics (like laptops with an iGPU and discrete NVIDIA GPU) default to the low-power iGPU. This isn't necessarily bad – dedicated GPUs are often power-hungry and drain your battery. But most of the time you must explicitly tell games to use the big-boy GPU.
The Old Way (OpenGL)
Idiomatically, you'd pass environment variables to route rendering:
# Launch Options
__NV_PRIME_RENDER_OFFLOAD=1
__GLX_VENDOR_LIBRARY_NAME=nvidiaThis operates at the GLX/EGL layer. It tells the OpenGL display protocol (GLVND) which vendor library to use. It works great for OpenGL apps and games! Not so great for Vulkan-native software though.
Game engines like Unreal Engine 5 use Vulkan directly and ignore OpenGL-specific variables entirely. When UE5 starts, it queries the Vulkan Loader for all available GPUs. Without that nudge, the engine may select the iGPU instead.
The Current Way (Vulkan)
Now we solve this by forcing the Vulkan Loader to see only the NVIDIA driver:
# Launch Options
VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json
This defines the Vulkan Installable Client Driver (ICD). The Vulkan Loader reads this file and ignores all other GPUs. UE5 sees only the NVIDIA GPU and runs perfectly.
The Really Old Way (Stinky)
In the olden days you would use NVIDIA Bumblebee. Bumblebee spins up a secondary, XServer and copies frames back to your main display. Kind of cool but it destroys performance since it has to render every frame twice.
Modern driver offloading makes it antique and you should not use it unless you are running really old hardware.
That's It!
That's It! Thank you for reading this post, watching the video, and a big thanks if you watched my original video too! I decided to make this one because I still see comments on my old one. Hopefully this guide helps you out. 💙

tl;dr – Use VK_ICD_FILENAMES for Vulkan games and stay away from Bumblebee!