diff options
author | Travis CI <zmoelnig@travis-ci.umlaeute.mur.at> | 2015-03-14 20:40:49 +0000 |
---|---|---|
committer | Travis CI <zmoelnig@travis-ci.umlaeute.mur.at> | 2015-03-14 20:40:49 +0000 |
commit | 5c694f159b012d1d94bf15bfe580dec52e4fe797 (patch) | |
tree | ce400f82d72f92189c50f54afa11c568cda53562 /Gem/examples/10.glsl/normal.frag |
Gem osx/x86_64
built '' for osx/x86_64
Diffstat (limited to 'Gem/examples/10.glsl/normal.frag')
-rw-r--r-- | Gem/examples/10.glsl/normal.frag | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/Gem/examples/10.glsl/normal.frag b/Gem/examples/10.glsl/normal.frag new file mode 100644 index 0000000..eef7f86 --- /dev/null +++ b/Gem/examples/10.glsl/normal.frag @@ -0,0 +1,37 @@ +// Cyrille Henry 2008 +#extension GL_ARB_texture_rectangle : enable + +uniform sampler2DRect texture_mass; +varying vec2 coord; + +vec2 test1(vec2 V) +{ + return(max(min(V,vec2(91.,63.)),vec2(0.))); +} + +void main (void) +{ + vec4 color = vec4(1.,0.,0.,1.); + + if ( (coord.x < 91.) && (coord.y < 63.) ) + { + vec4 posG = texture2DRect(texture_mass, test1(coord+vec2(-1., 0.))) ; + vec4 posD = texture2DRect(texture_mass, test1(coord+vec2( 1., 0.))) ; + vec4 posH = texture2DRect(texture_mass, test1(coord+vec2( 0.,-1.))) ; + vec4 posB = texture2DRect(texture_mass, test1(coord+vec2( 0., 1.))) ; + + vec3 normal = cross((posG.xyz-posD.xyz),(posH.xyz-posB.xyz)); + color.xyz = normalize(normal); + color.xyz = normal; + + vec3 DX = posG.xyz-posD.xyz; + vec3 DY = posH.xyz-posB.xyz; + + color += vec4(1.); + color *= 0.5; + + } + color.a = 1.; + gl_FragColor = color; + +} |