44 lines
1.1 KiB
GLSL
44 lines
1.1 KiB
GLSL
#include "Uniforms.glsl"
|
|
#include "Samplers.glsl"
|
|
#include "Transform.glsl"
|
|
#include "ScreenPos.glsl"
|
|
#include "PostProcess.glsl"
|
|
|
|
varying vec2 vTexCoord;
|
|
varying vec2 vScreenPos;
|
|
|
|
#ifdef COMPILEPS
|
|
uniform vec2 cBlurDir;
|
|
uniform float cBlurRadius;
|
|
uniform float cBlurSigma;
|
|
uniform vec2 cBlurHInvSize;
|
|
#endif
|
|
|
|
void VS()
|
|
{
|
|
mat4 modelMatrix = iModelMatrix;
|
|
vec3 worldPos = GetWorldPos(modelMatrix);
|
|
gl_Position = GetClipPos(worldPos);
|
|
vTexCoord = GetQuadTexCoord(gl_Position);
|
|
vScreenPos = GetScreenPosPreDiv(gl_Position);
|
|
}
|
|
|
|
void PS()
|
|
{
|
|
#ifdef BLUR3
|
|
gl_FragColor = GaussianBlur(3, cBlurDir, cBlurHInvSize * cBlurRadius, cBlurSigma, sDiffMap, vTexCoord);
|
|
#endif
|
|
|
|
#ifdef BLUR5
|
|
gl_FragColor = GaussianBlur(5, cBlurDir, cBlurHInvSize * cBlurRadius, cBlurSigma, sDiffMap, vTexCoord);
|
|
#endif
|
|
|
|
#ifdef BLUR7
|
|
gl_FragColor = GaussianBlur(7, cBlurDir, cBlurHInvSize * cBlurRadius, cBlurSigma, sDiffMap, vTexCoord);
|
|
#endif
|
|
|
|
#ifdef BLUR9
|
|
gl_FragColor = GaussianBlur(9, cBlurDir, cBlurHInvSize * cBlurRadius, cBlurSigma, sDiffMap, vTexCoord);
|
|
#endif
|
|
}
|