Skip to content

mausimus/ShaderGlass

Repository files navigation

License GitHub Stars Downloads Latest Release Beta Release

ShaderGlass

Overlay for running GPU shaders on top of Windows desktop.

Features

  • applies shader effects on top of desktop, in a floating window or full-screen
  • built-in RetroArch shader library (1200+ shaders!) covering:
    • CRT monitor simulation
    • image upscaling
    • TV, VHS and handheld simulation
    • softening, denoising, blur, sharpen and many more
  • works with most emulators, retro platforms and pixel art editors including:
  • excellent companion for pixel art showing shaded and/or aspect-ratio corrected preview
  • you can even use it on top of YouTube, Twitch or modern games
  • allows capture from a USB source (webcam or capture card)
  • saving and loading profiles
  • import of external .slangp/.slang shaders
  • high customizability with various options, operating modes and shader parameters
  • can be captured by OBS (using Game Capture source)

Check out Online Manual for details.


Download

Latest stable release (v1.2.0, 9 Aug 2025):

  • device capture input (webcam/capture card)
  • hide original mouse cursor when "Capture Cursor" is enabled
  • ability to edit global hotkeys + more of them
  • added Sonkun's presets
  • minor fixes

https://github.com/mausimus/ShaderGlass/releases/download/v1.2.0/ShaderGlass-1.2.0-win-x64.zip


Get it on Steam!

ShaderGlass on Steam

Betas and older versions available here

Follow ShaderGlass on itch.io for latest updates.


Requirements

  • Windows 10, version 2004 (build 19041) or Windows 11
    • will work on version 1903 but in limited capacity (no Desktop Glass mode)
    • Windows 11 allows the removal of yellow border (see FAQ for tips on avoiding it on Windows 10)
  • DirectX 11-capable GPU

Demo

Click to view on YouTube

ShaderGlass (YouTube)

Screenshots

ShaderGlass running over multiple applications on Windows 11 desktop.

screenshot

Desktop Glass mode

In this mode a transparent floating window will apply a shader to anything behind it. Requires Windows 10 2004 - on 1903/1909 you will see only a black window if you switch to this mode.

Wikipedia in Chrome processed by crt-geom shader which applies scanlines and CRT curvature.

screenshot

Window Clone mode

When capture is fixed to a specific window it's easier to tune scaling to match the input and image can also be recaptured (screenshot/OBS etc.)

FS-UAE

Amiga version of The Secret of Monkey Island (1990) running in FS-UAE with crt-interlaced-halation shader applied.

screenshot

Altirra

Ninja (1986) for the Atari XL running in Altirra with a TV-OUT simulation shader.

screenshot

Adventure Game Studio

The Crimson Diamond (2024), a modern AGS game using HSM MegaBezel STD shader.

screenshot

DOSBox

Police Quest (1987) with its massive half-EGA pixels, aspect-ratio corrected and post-processed using newpixie-crt shader.

screenshot

Rick Dangerous (1989) with C64 monitor shader applied.

screenshot


Instructions & Manual

See Online Manual for option explanations and Frequently Asked Questions.


Code

Built using Visual Studio 2022 using ISO C++ 20, Windows SDK 10.0.26100, Windows Capture API and DirectX 11.

ShaderGlass includes a limited implementation of RetroArch shader back-end using DirectX 11. ShaderGen is a command-line tool for converting Slang shaders into .h files which can be precompiled in ShaderGlass. The conversion process relies on:

  1. glslang for converting Slang/GLSL shaders to SPIR-V
  2. SPIR-V cross-compiler for converting those to HLSL (DX11 format)
  3. Direct3D Shader Compiler (fxc.exe) for pre-compiling into bytecode

Notices

  • ShaderGlass application is provided under GNU General Public License v3.0

  • Includes precompiled shaders from libretro/RetroArch shader repository. Please refer to copyright notes within shader code for detailed copyright and license information about each shader.

  • App icon courtesy of Icons-Land

  • Big kudos to RetroArch team, emulator developers and the wide retro community!

  • Thanks to @lonestarr and @EndlesslyFlowering for PRs and everyone for feedback and testing 👍