#version 330 core layout (location = 0) in vec3 pos; layout (location = 1) in vec3 normal; out vec3 FragPos; out vec3 LocalPos; out vec3 Backside; out float BacksideIrradiance; out vec3 Normal; uniform sampler2D shadowmapTexture; uniform vec3 lightPos; uniform vec2 samplePositions[13]; uniform vec3 sampleWeights[13]; uniform int screenWidth; uniform int screenHeight; uniform mat4 model; uniform mat4 view; uniform mat4 lightView; uniform mat4 lightViewInv; uniform mat4 projection; uniform mat4 lightProjection; vec4 blur(sampler2D tex, vec2 uv, vec2 res) { float Pi = 6.28318530718; // Pi*2 // GAUSSIAN BLUR SETTINGS {{{ float Directions = 16.0; // BLUR DIRECTIONS (Default 16.0 - More is better but slower) float Quality = 4.0; // BLUR QUALITY (Default 4.0 - More is better but slower) float Size = 8.0; // BLUR SIZE (Radius) // GAUSSIAN BLUR SETTINGS }}} vec2 Radius = Size/res; // Pixel colour vec4 Color = texture(tex, uv); // Blur calculations for( float d=0.0; d