Skip to the content.

CShade

About

CShade is an HLSL shader collection for ReShade. CShade introduces conventional image and video processing effects from a different angle.

CShade also includes .fxh files that contain algorithms used in the collection or have potential use.

Effects

Inter-Shader Merging

CShade allows users to blend shaders together and configure shaders to output a combination of Red/Green/Blue/Alpha.

Adaptive Exposure

CShade features an adaptive-exposure shader that uses hardware blending for temporal smoothing. The shader also features spot-metering, allowing users to expose their image depending on an area.

Image Processing

CShade features shaders that deal with getting information about an image.

Video Processing

CShade features real-time motion estimation and feature-matching shaders through hierarchal Lucas-Kanade optical flow.

Post Processing

CShade features shaders that filter images for aesthetics.

Coding Convention

UI

In ui_category/ui_label, use · to separate between subcategories, if needed

uniform float _Level1Weight <
    ui_category = "Bloom · Level Weights";
    ui_label = "Level 1";
    ui_type = "slider";
    ui_min = 0.0;
    ui_max = 1.0;
> = 1.0;

uniform float _CShadeExposureSmoothingSpeed <
    ui_category = "Pipeline · Output · AutoExposure";
    ui_label = "Smoothing Speed";
    ui_type = "slider";
    ui_min = 0.1;
    ui_max = 1.0;
> = 0.25;

Functions and Variables

Shared Method From Header File

shared/common/cLib.fxh -> Common_CLib_FunctionName()

ALLCAPS

ALL_CAPS

_SnakeCase

SnakeCase

SNAKE_Case

Acknowledgments