# crosire/reshade

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/crosire-reshade).**

5,021 stars · 637 forks · C++ · bsd-3-clause

## Links

- GitHub: https://github.com/crosire/reshade
- Homepage: https://reshade.me
- awesome-repositories: https://awesome-repositories.com/repository/crosire-reshade.md

## Topics

`compiler` `d3d11` `d3d12` `d3d9` `glsl` `hlsl` `hook` `injector` `opengl` `post-processing` `preprocessor` `shaders` `spir-v` `vulkan`

## Description

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.

## Tags

### User Interface & Experience

- [Shader-Based Enhancements](https://awesome-repositories.com/f/user-interface-experience/visual-customization-tools/real-time-visual-effect-processors/shader-based-enhancements.md) — Applies custom shaders to games or video software to alter colors, lighting, and depth-based effects in real time.

### Part of an Awesome List

- [Graphics API Hooking Add-ons](https://awesome-repositories.com/f/awesome-lists/media/kodi-add-ons-and-plugins/graphics-api-hooking-add-ons.md) — Provides a stable C++ API for third-party modules to extend both the host and target application.

### Development Tools & Productivity

- [DLL Injection Hooks](https://awesome-repositories.com/f/development-tools-productivity/application-customization-frameworks/system-hooking-frameworks/dll-injection-hooks.md) — Injects a DLL into the target process to hook graphics API functions and execute custom shaders.

### DevOps & Infrastructure

- [Graphics API Hooking Add-ons](https://awesome-repositories.com/f/devops-infrastructure/infrastructure-add-ons/graphics-api-hooking-add-ons.md) — Loads third-party add-ons that use a defined API to extend both the host and target application's functionality. ([source](https://cdn.jsdelivr.net/gh/crosire/reshade@main/README.md))
- [Graphics API Hooking Add-ons](https://awesome-repositories.com/f/devops-infrastructure/infrastructure-add-ons/service-mesh-add-ons/graphics-api-hooking-add-ons.md) — Loads third-party DLL add-ons that extend both the host application and target software through a defined API.

### Graphics & Multimedia

- [Auto-Detection Mechanisms](https://awesome-repositories.com/f/graphics-multimedia/depth-buffers/auto-detection-mechanisms.md) — Automatically identifies the depth-stencil buffer to enable per-pixel depth effects like ambient occlusion.
- [Shader Injection Pipelines](https://awesome-repositories.com/f/graphics-multimedia/gpu-accelerated-shaders/shader-injection-pipelines.md) — Injects custom shaders into games and video software to alter visuals using custom shaders in real time. ([source](https://cdn.jsdelivr.net/gh/crosire/reshade@main/README.md))
- [Post-Processing Pipelines](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/post-processing-pipelines.md) — Arranges user-selected shader effects into a compile-time ordered pipeline that reads color and depth buffers.
- [Post-Processing Injectors](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/post-processing-pipelines/multi-pass-rendering-pipelines/real-time-rendering-engines/post-processing-injectors.md) — Injects custom shaders into games and video software to apply real-time post-processing effects using frame data.
- [API Interception Hooks](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/graphics-apis-bindings/graphics-rendering-apis/api-interception-hooks.md) — Intercepts DirectX, OpenGL, and Vulkan API calls to capture frame data and insert post-processing passes.
- [Runtime Shader Compilers](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/shaders/shader-cross-compilation-pipelines/runtime-shader-compilers.md) — Compiles HLSL/GLSL-like shader source files at runtime using a built-in compiler for GPU execution.

### Web Development

- [Graphics API Hooking Add-ons](https://awesome-repositories.com/f/web-development/third-party-api-clients/third-party-platform-interfaces/graphics-api-hooking-add-ons.md) — Loads third-party add-ons through a defined API to extend the functionality of both the host and target application.
