ReShade is a post-processing shader injector that hooks into DirectX, OpenGL, and Vulkan rendering pipelines to apply custom shaders in real time. It operates by injecting a DLL into the target process, intercepting graphics API calls, and inserting a configurable pipeline of user-selected shader effects that read color and depth buffers to alter the final output.
The project distinguishes itself through depth buffer auto-detection, which automatically identifies the depth-stencil attachment in the rendering pipeline, enabling per-pixel depth effects such as ambient occlusion and depth-of-field. It also includes an embedded shader compiler that compiles HLSL- and GLSL-like shader source files at runtime, removing the need for external compilation tools. A stable add-on plugin API allows third-party modules to extend both the host application and the target software, turning ReShade into an extensible framework rather than a fixed set of effects.
Beyond the core injection pipeline, ReShade can load third-party add-ons that leverage its defined API, and its embedded compiler can be used as a standalone library within other projects. The overall system is designed for real-time visual enhancement in games and video software, supporting a wide range of custom shader effects through a compile-time ordered pipeline.