Vesktop, being a Chromium-based Discord client, doesn’t let you tweak GPU settings easily, but you can force-enable Vulkan or SkiaGraphite with a simple batch script.
This guide will walk you through:
✅ Creating two batch scripts (one for Vulkan, one for SkiaGraphite).
✅ Disabling Direct Rendering Display Compositor & Raw Draw (they break rendering).
✅ Stopping Vesktop from launching on startup and replacing it with your custom batch script.
✅ Setting up a desktop shortcut with an icon.
There are two versions of this script—one optimized for Vulkan, and one for SkiaGraphite.
u/echo off
taskkill /F /IM Vesktop.exe
timeout /t 2 /nobreak >nul
start "" "%LOCALAPPDATA%\vesktop\Vesktop.exe" ^
--enable-features=Vulkan,WebGPU,WebNN,AcceleratedVideoDecodeLinuxGL,AcceleratedVideoEncoder,AcceleratedVideoDecoder,AcceleratedVideoDecodeLinuxZeroCopyGL ^
--use-vulkan ^
--enable-vulkan ^
--disable-software-rasterizer ^
--allow-file-access-from-files ^
--disable-renderer-backgrounding ^
--disable-background-timer-throttling ^
--disable-backgrounding-occluded-windows ^
--autoplay-policy=no-user-gesture-required ^
--enable-speech-dispatcher ^
--disable-features=DirectRenderingDisplayCompositor,RawDraw,CalculateNativeWinOcclusion,WinRetrieveSuggestionsOnlyOnDemand,HardwareMediaKeyHandling,MediaSessionService
✅ Forces Vulkan rendering
✅ Disables known rendering issues
u/echo off
taskkill /F /IM Vesktop.exe
timeout /t 2 /nobreak >nul
start "" "%LOCALAPPDATA%\vesktop\Vesktop.exe" ^
--enable-features=SkiaGraphite,WebGPU,WebNN,AcceleratedVideoDecodeLinuxGL,AcceleratedVideoEncoder,AcceleratedVideoDecoder,AcceleratedVideoDecodeLinuxZeroCopyGL ^
--disable-software-rasterizer ^
--allow-file-access-from-files ^
--disable-renderer-backgrounding ^
--disable-background-timer-throttling ^
--disable-backgrounding-occluded-windows ^
--autoplay-policy=no-user-gesture-required ^
--enable-speech-dispatcher ^
--disable-features=DirectRenderingDisplayCompositor,RawDraw,CalculateNativeWinOcclusion,WinRetrieveSuggestionsOnlyOnDemand,HardwareMediaKeyHandling,MediaSessionService
✅ Forces SkiaGraphite rendering
✅ Disables broken compositor features
- Open Notepad.
- Copy one of the scripts above.
- Click File > Save As.
- Change Save as type: All Files.
- Name it something like:
Launch_Vesktop_Vulkan.bat
Launch_Vesktop_SkiaGraphite.bat
- Save it somewhere convenient, like Desktop or Documents.
- Press
Ctrl + Shift + Esc
to open Task Manager. - Go to the Startup tab.
- Find Vesktop and Disable it.
This stops Vesktop from launching normally so we can force it to use the optimized batch script instead.
To make sure Vesktop always launches with Vulkan or SkiaGraphite on boot, do this:
- Press
Win + R
, type:and hit Enter.shell:startup - Copy your batch file into this folder.
- Now, every time Windows starts, Vesktop will launch with the optimized settings.
For easy access, make a shortcut to the batch script:
- Right-click your
.bat
file > Create Shortcut. - Move the shortcut to your Desktop.
- Right-click > Properties on the shortcut.
- Click Change Icon > Pick a custom
.ico
file (optional, but makes it look clean). - Hit OK > Apply.
Now, you have a one-click launcher that kills Vesktop if it's already running and restarts it with your custom settings.
- If Vulkan breaks rendering, switch to the SkiaGraphite version.
That’s it! Enjoy your fully optimized Vesktop with better performance. 🚀💨