summaryrefslogtreecommitdiffstats
path: root/src/demos/dualDepthPeeling/shaders/shade.fp
diff options
context:
space:
mode:
Diffstat (limited to 'src/demos/dualDepthPeeling/shaders/shade.fp')
-rw-r--r--src/demos/dualDepthPeeling/shaders/shade.fp40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/demos/dualDepthPeeling/shaders/shade.fp b/src/demos/dualDepthPeeling/shaders/shade.fp
new file mode 100644
index 0000000..94f8dcc
--- /dev/null
+++ b/src/demos/dualDepthPeeling/shaders/shade.fp
@@ -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