diff options
author | Sven Gothel <sgothel at jausoft dot com> | 2012-02-15 17:58:41 -0800 |
---|---|---|
committer | Sven Gothel <sgothel at jausoft dot com> | 2012-02-15 17:58:41 -0800 |
commit | abe9a0f08f45513017f272d61572421b93e3231a (patch) | |
tree | 2c432606acecae867daa509ce08546e7bfc4b111 /src/demos/dualDepthPeeling/shaders/shade_fragment.glsl | |
parent | 0bd5256af8fd791063e08cdd55a365ab4610e21c (diff) | |
parent | 9fa9793d462189d946d742f2f95cd1294297119f (diff) |
Merge pull request #2 from abokinsky/master
Dual Depth Peeling Dragon Demo
Diffstat (limited to 'src/demos/dualDepthPeeling/shaders/shade_fragment.glsl')
-rw-r--r-- | src/demos/dualDepthPeeling/shaders/shade_fragment.glsl | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/demos/dualDepthPeeling/shaders/shade_fragment.glsl b/src/demos/dualDepthPeeling/shaders/shade_fragment.glsl new file mode 100644 index 0000000..94f8dcc --- /dev/null +++ b/src/demos/dualDepthPeeling/shaders/shade_fragment.glsl @@ -0,0 +1,40 @@ +//-------------------------------------------------------------------------------------- +// Order Independent Transparency Fragment Shader +// +// Author: Louis Bavoil +// Email: [email protected] +// +// Copyright (c) NVIDIA Corporation. All rights reserved. +//-------------------------------------------------------------------------------------- + +uniform float Alpha; + +#define COLOR_FREQ 30.0 +#define ALPHA_FREQ 30.0 + +#if 1 +vec4 ShadeFragment() +{ + float xWorldPos = gl_TexCoord[0].x; + float yWorldPos = gl_TexCoord[0].y; + float diffuse = gl_TexCoord[0].z; + + vec4 color; + float i = floor(xWorldPos * COLOR_FREQ); + float j = floor(yWorldPos * ALPHA_FREQ); + color.rgb = (fmod(i, 2.0) == 0) ? vec3(.4,.85,.0) : vec3(1.0); + //color.a = (fmod(j, 2.0) == 0) ? Alpha : 0.2; + color.a = Alpha; + + color.rgb *= diffuse; + return color; +} +#else +vec4 ShadeFragment() +{ + vec4 color; + color.rgb = vec3(.4,.85,.0); + color.a = Alpha; + return color; +} +#endif |