Tutorial (for developers)

7 years 8 months ago - 7 years 6 months ago #1 by Ganossa Tutorial (for developers) was created by Ganossa

Dear developer,

Since you came to this thread, it seems you want to get familiar with how to implement extensions to the ReShade Framework. In the following, you can find a more advanced introduction to its structure and explanations on how to implement or port your shader.

1. ReShade Framework Structure (advanced)
To better explain the structure, we split it into three levels.
Level 1 (binary level)

The first (binary) level is where all the ReShade binaries are located. Same as in previous (stand-alone) version of ReShade, there is also a ReShade.fx file which is loaded first by the compiler. As a developer, you will need to add lines in the ReShade.fx file to include your implemented shader into the framework. More about that in section 3.1 Including/Loading Shader.

Level 2 (settings level)

The ReShade folder of the first level contains the second (settings) level which holds the settings file to each individual (and the global) suite. People that used SweetFX before will be used to the structure of those files. In the setting files, the developer can add shader and their free variables to a suite. Further, to allow developers to use variables without name restrictions across suites, a .undef file has to be created for each existing settings file. More to that in section 3.2 Shader Settings.

Level 3 (suite level)

Each suite folder (Common, CustomFX, GemFX, McFX and SweetFX) contains the third (suite) level.

2. Conventions
2.1 Naming Conventions
2.2 Shader Conventions

3. Custom Shader Development
3.1 Including Shader
3.2 Shader Settings

4. Suite Development

5. ReShade Framework Video Tutorial for Developers
Last edit: 7 years 6 months ago by Ganossa.
The following user(s) said Thank You: MaxG3D
The topic has been locked.
We use cookies

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.