X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=examples%2Fboard_reprap%2Fgfx%2Fscene.fs;fp=examples%2Fboard_reprap%2Fgfx%2Fscene.fs;h=0000000000000000000000000000000000000000;hb=802a8e0987509f538ca1d47c2474381759eae523;hp=5ff1baacbd250ed7a98f03d26607544fab62187b;hpb=06346f65b6642990695f15b87760f4a9aa3ebd06;p=simavr diff --git a/examples/board_reprap/gfx/scene.fs b/examples/board_reprap/gfx/scene.fs deleted file mode 100644 index 5ff1baa..0000000 --- a/examples/board_reprap/gfx/scene.fs +++ /dev/null @@ -1,82 +0,0 @@ -uniform sampler2DShadow shadowMap ; - -// This define the value to move one pixel left or right -uniform vec2 pixelOffset = vec2(1.0 / 1024.0, 1.0 / 1024.0); -uniform sampler2D tex0; -varying vec2 texCoord; - -varying vec4 ShadowCoord; - - -float lookup( vec2 offSet) -{ - // Values are multiplied by ShadowCoord.w because shadow2DProj does a W division for us. - return shadow2DProj(shadowMap, - ShadowCoord + vec4( - offSet.x * pixelOffset.x * ShadowCoord.w, - offSet.y * pixelOffset.y * ShadowCoord.w, - 0.05, 0.0) ).w; -} - -void main() -{ - // Used to lower moiré pattern and self-shadowing - //shadowCoordinateWdivide.z += ; - - float shadow = 0.0; - - // Avoid counter shadow - if (ShadowCoord.w > 1.0) { - // Simple lookup, no PCF - //shadow = lookup(vec2(0.0,0.0)); - - // 8x8 kernel PCF - /* - float x,y; - for (y = -3.5 ; y <=3.5 ; y+=1.0) - for (x = -3.5 ; x <=3.5 ; x+=1.0) - shadow += lookup(vec2(x,y)); - shadow /= 64.0 ; - */ - - // 8x8 PCF wide kernel (step is 10 instead of 1) - /* - float x,y; - for (y = -30.5 ; y <=30.5 ; y+=10.0) - for (x = -30.5 ; x <=30.5 ; x+=10.0) - shadow += lookup(vec2(x,y)); - shadow /= 64.0 ; - */ - - // 4x4 kernel PCF - /* - float x,y; - for (y = -1.5 ; y <=1.5 ; y+=1.0) - for (x = -1.5 ; x <=1.5 ; x+=1.0) - shadow += lookup(vec2(x,y)); - shadow /= 16.0 ; - */ - // 4x4 PCF wide kernel (step is 10 instead of 1) - - float x,y; - for (y = -10.5 ; y <=10.5 ; y+=10.0) - for (x = -10.5 ; x <=10.5 ; x+=10.0) - shadow += lookup(vec2(x,y)); - shadow /= 16.0 ; - - - // 4x4 PCF dithered - /* - // use modulo to vary the sample pattern - vec2 o = mod(floor(gl_FragCoord.xy), 2.0); - - shadow += lookup(vec2(-1.5, 1.5) + o); - shadow += lookup(vec2( 0.5, 1.5) + o); - shadow += lookup(vec2(-1.5, -0.5) + o); - shadow += lookup(vec2( 0.5, -0.5) + o); - shadow *= 0.25 ; - */ - } - vec4 c = (shadow + 0.0) * gl_Color; - gl_FragColor = mix(texture2D(tex0, texCoord), vec4(0.0,0.0,0.0,0.9), 0.8-shadow); -}