quick backup
[demo] / gl_shaders / default.f.glsl
diff --git a/gl_shaders/default.f.glsl b/gl_shaders/default.f.glsl
new file mode 100644 (file)
index 0000000..388ba76
--- /dev/null
@@ -0,0 +1,29 @@
+#version 450
+
+uniform sampler2D tex;
+
+uniform vec4 diffuse;
+uniform vec4 specular;
+uniform float shininess;
+
+varying vec3 pos;
+varying vec3 normal;
+varying vec3 ldir;
+varying vec3 tex_coord;
+
+layout(location = 0) out vec4 color;
+
+void main()
+{
+       vec3 p = normalize(pos);
+       vec3 n = normalize(normal);
+       vec3 l = normalize(ldir);
+
+       vec3 r = normalize(-reflect(l, n));
+       vec3 vdir = normalize(-p);
+
+       float cdiff = max(dot(l, n), 0.0);
+       float cspec = pow(max(dot(r, vdir), 0.0), shininess);
+
+       color = diffuse * cdiff * texture2D(tex, tex_coord.xy) + specular * cspec;
+}