summaryrefslogtreecommitdiffstats
path: root/src/demos/dualDepthPeeling/shaders/shade_fragment.glsl
diff options
context:
space:
mode:
authorSven Gothel <sgothel at jausoft dot com>2012-02-15 17:58:41 -0800
committerSven Gothel <sgothel at jausoft dot com>2012-02-15 17:58:41 -0800
commitabe9a0f08f45513017f272d61572421b93e3231a (patch)
tree2c432606acecae867daa509ce08546e7bfc4b111 /src/demos/dualDepthPeeling/shaders/shade_fragment.glsl
parent0bd5256af8fd791063e08cdd55a365ab4610e21c (diff)
parent9fa9793d462189d946d742f2f95cd1294297119f (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.glsl40
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
+//
+// 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