summaryrefslogtreecommitdiffstats
path: root/src/extras/shaders/es2/phongalpha.frag
diff options
context:
space:
mode:
Diffstat (limited to 'src/extras/shaders/es2/phongalpha.frag')
-rw-r--r--src/extras/shaders/es2/phongalpha.frag22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/extras/shaders/es2/phongalpha.frag b/src/extras/shaders/es2/phongalpha.frag
new file mode 100644
index 000000000..c5ec43049
--- /dev/null
+++ b/src/extras/shaders/es2/phongalpha.frag
@@ -0,0 +1,22 @@
+#define FP highp
+
+// TODO: Replace with a struct
+uniform FP vec3 ka; // Ambient reflectivity
+uniform FP vec3 kd; // Diffuse reflectivity
+uniform FP vec3 ks; // Specular reflectivity
+uniform FP float shininess; // Specular shininess factor
+uniform FP float alpha;
+
+uniform FP vec3 eyePosition;
+
+varying FP vec3 worldPosition;
+varying FP vec3 worldNormal;
+
+#pragma include light.inc.frag
+
+void main()
+{
+ FP vec3 diffuseColor, specularColor;
+ adsModel(worldPosition, worldNormal, eyePosition, shininess, diffuseColor, specularColor);
+ gl_FragColor = vec4( ka + kd * diffuseColor + ks * specularColor, alpha );
+}