diff options
Diffstat (limited to 'src/effects/data/shaders/multieffect.vert')
-rw-r--r-- | src/effects/data/shaders/multieffect.vert | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/effects/data/shaders/multieffect.vert b/src/effects/data/shaders/multieffect.vert new file mode 100644 index 0000000000..f970c75697 --- /dev/null +++ b/src/effects/data/shaders/multieffect.vert @@ -0,0 +1,38 @@ +#version 440 + +layout(location = 0) in vec4 qt_Vertex; +layout(location = 1) in vec2 qt_MultiTexCoord0; +layout(location = 0) out vec2 texCoord; +#if defined(SHADOW) +layout(location = 1) out vec2 shadowTexCoord; +#endif + +layout(std140, binding = 0) uniform buf { + mat4 qt_Matrix; + float qt_Opacity; + + float shadowScale; + vec2 shadowOffset; + vec2 centerOffset; + + float contrast; + float brightness; + float saturation; + vec4 colorizationColor; + vec4 blurWeight1; + vec2 blurWeight2; + vec4 mask; + float maskInverted; + vec4 shadowColor; + vec4 shadowBlurWeight1; + vec2 shadowBlurWeight2; +}; + +void main() { + texCoord = qt_MultiTexCoord0; +#if defined(SHADOW) + shadowTexCoord = qt_MultiTexCoord0 - shadowOffset; + shadowTexCoord = (shadowTexCoord * shadowScale) + centerOffset; +#endif + gl_Position = qt_Matrix * qt_Vertex; +} |