All Projects → crosire → Reshade

crosire / Reshade

Licence: bsd-3-clause
A generic post-processing injector for games and video software.

Programming Languages

C++
36643 projects - #6 most used programming language
C#
18002 projects

Projects that are alternatives of or similar to Reshade

Shaderconductor
ShaderConductor is a tool designed for cross-compiling HLSL to other shading languages
Stars: ✭ 1,146 (-49.85%)
Mutual labels:  compiler, spir-v, opengl, glsl, vulkan, hlsl, d3d11, d3d12, d3d9
Pmtech
Lightweight, multi-platform, data-oriented game engine.
Stars: ✭ 478 (-79.08%)
Mutual labels:  spir-v, opengl, glsl, vulkan, hlsl, d3d11
3d Game Shaders For Beginners
🎮 A step-by-step guide to implementing SSAO, depth of field, lighting, normal mapping, and more for your 3D game.
Stars: ✭ 11,698 (+411.95%)
Mutual labels:  opengl, glsl, vulkan, shaders, hlsl
Slang
Making it easier to work with shaders
Stars: ✭ 627 (-72.56%)
Mutual labels:  glsl, vulkan, shaders, hlsl, d3d12
Bgfx
Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
Stars: ✭ 10,252 (+348.67%)
Mutual labels:  opengl, vulkan, d3d11, d3d12, d3d9
Crossshader
⚔️ A tool for cross compiling shaders. Convert between GLSL, HLSL, Metal Shader Language, or older versions of GLSL.
Stars: ✭ 113 (-95.05%)
Mutual labels:  compiler, opengl, glsl, vulkan, hlsl
Shadergen
Proof-of-concept library for generating HLSL, GLSL, and Metal shader code from C#,
Stars: ✭ 395 (-82.71%)
Mutual labels:  opengl, glsl, vulkan, shaders, hlsl
Diligentcore
Core functionality of Diligent Engine
Stars: ✭ 263 (-88.49%)
Mutual labels:  opengl, vulkan, shaders, d3d11, d3d12
Kiero
Universal graphical hook for a D3D9-D3D12, OpenGL and Vulkan based games.
Stars: ✭ 374 (-83.63%)
Mutual labels:  opengl, vulkan, d3d11, d3d9, hook
Diligentsamples
Sample projects demonstrating the usage of Diligent Engine
Stars: ✭ 138 (-93.96%)
Mutual labels:  opengl, vulkan, d3d11, d3d12
Shaderc Rs
Rust bindings for the shaderc library.
Stars: ✭ 143 (-93.74%)
Mutual labels:  compiler, glsl, vulkan, hlsl
Renderdoc
RenderDoc is a stand-alone graphics debugging tool.
Stars: ✭ 5,969 (+161.23%)
Mutual labels:  opengl, vulkan, d3d11, d3d12
Glsl
GLSL parser for Rust
Stars: ✭ 145 (-93.65%)
Mutual labels:  compiler, spir-v, opengl, glsl
Diligentengine
A modern cross-platform low-level graphics library and rendering framework
Stars: ✭ 2,142 (-6.26%)
Mutual labels:  opengl, vulkan, d3d11, d3d12
Shaderc
A collection of tools, libraries, and tests for Vulkan shader compilation.
Stars: ✭ 1,016 (-55.54%)
Mutual labels:  compiler, glsl, vulkan, hlsl
Dxvk
Vulkan-based implementation of D3D9, D3D10 and D3D11 for Linux / Wine
Stars: ✭ 7,117 (+211.47%)
Mutual labels:  spir-v, vulkan, d3d11, d3d9
Glslang
Khronos-reference front end for GLSL/ESSL, partial front end for HLSL, and a SPIR-V generator.
Stars: ✭ 2,034 (-10.98%)
Mutual labels:  compiler, spir-v, glsl, hlsl
Llgl
Low Level Graphics Library (LLGL) is a thin abstraction layer for the modern graphics APIs OpenGL, Direct3D, Vulkan, and Metal
Stars: ✭ 1,011 (-55.75%)
Mutual labels:  opengl, vulkan, d3d11, d3d12
Pbr
An implementation of physically based shading & image based lighting in D3D11, D3D12, Vulkan, and OpenGL 4.
Stars: ✭ 722 (-68.4%)
Mutual labels:  opengl, vulkan, d3d11, d3d12
Vk9
Direct3D 9 compatibility layer using Vulkan.
Stars: ✭ 799 (-65.03%)
Mutual labels:  spir-v, vulkan, hlsl, d3d9

ReShade

This is a generic post-processing injector for games and video software. It exposes an automated way to access both frame color and depth information and a custom shader language called ReShade FX to write effects like ambient occlusion, depth of field, color correction and more which work everywhere.

ReShade can optionally load add-ons, DLLs that make use of the ReShade API to extend functionality of both ReShade and/or the application ReShade is being applied to. To get started on how to write your own add-on, check out the API reference.

The ReShade FX shader compiler contained in this repository is standalone, so can be integrated into other projects as well. Simply add all source/effect_*.* files to your project and use it similar to the fxc example.

Building

You'll need Visual Studio 2017 or higher to build ReShade and Python for the gl3w dependency.

  1. Clone this repository including all Git submodules
  2. Open the Visual Studio solution
  3. Select either the 32-bit or 64-bit target platform and build the solution.
    This will build ReShade and all dependencies. To build the setup tool, first build the Release configuration for both 32-bit and 64-bit targets and only afterwards build the Release Setup configuration (does not matter which target is selected then).

A quick overview of what some of the source code files contain:

File Description
dll_log.cpp Simple file logger implementation
dll_main.cpp Main entry point (and optional test application)
dll_resources.cpp Access to DLL resource data (e.g. built-in shaders)
effect_lexer.cpp Lexical analyzer for C-like languages
effect_parser.cpp Parser for the ReShade FX shader language
effect_preprocessor.cpp C-like preprocessor implementation
hook.cpp Wrapper around MinHook which tracks associated function pointers
hook_manager.cpp Automatic hook installation based on DLL exports
input.cpp Keyboard and mouse input management and window message queue hooks
runtime.cpp Core ReShade runtime including effect and preset management
runtime_gui.cpp Overlay rendering and everything user interface related

Contributing

Any contributions to the project are welcomed, it's recommended to use GitHub pull requests.

License

All source code in this repository is licensed under a BSD 3-clause license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].