aboutsummaryrefslogtreecommitdiff
path: root/src/main/resources/assets/notenoughupdates/shaders/program
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/resources/assets/notenoughupdates/shaders/program')
-rw-r--r--src/main/resources/assets/notenoughupdates/shaders/program/blit.vsh16
-rw-r--r--src/main/resources/assets/notenoughupdates/shaders/program/grayscale.fsh15
-rw-r--r--src/main/resources/assets/notenoughupdates/shaders/program/grayscale.json17
3 files changed, 48 insertions, 0 deletions
diff --git a/src/main/resources/assets/notenoughupdates/shaders/program/blit.vsh b/src/main/resources/assets/notenoughupdates/shaders/program/blit.vsh
new file mode 100644
index 00000000..01a16db5
--- /dev/null
+++ b/src/main/resources/assets/notenoughupdates/shaders/program/blit.vsh
@@ -0,0 +1,16 @@
+#version 120
+
+attribute vec4 Position;
+
+uniform mat4 ProjMat;
+uniform vec2 OutSize;
+
+varying vec2 texCoord;
+
+void main(){
+ vec4 outPos = ProjMat * vec4(Position.xy, 0.0, 1.0);
+ gl_Position = vec4(outPos.xy, 0.2, 1.0);
+
+ texCoord = Position.xy / OutSize;
+ texCoord.y = 1.0 - texCoord.y;
+}
diff --git a/src/main/resources/assets/notenoughupdates/shaders/program/grayscale.fsh b/src/main/resources/assets/notenoughupdates/shaders/program/grayscale.fsh
new file mode 100644
index 00000000..70875510
--- /dev/null
+++ b/src/main/resources/assets/notenoughupdates/shaders/program/grayscale.fsh
@@ -0,0 +1,15 @@
+#version 120
+
+uniform sampler2D DiffuseSampler;
+
+varying vec2 texCoord;
+
+void main(){
+ vec3 Gray = vec3(0.3, 0.59, 0.11);
+ vec4 diffuseColor = texture2D(DiffuseSampler, texCoord);
+
+ float Luma = dot(diffuseColor.rgb, Gray);
+ diffuseColor.rgb = vec3(Luma, Luma, Luma);
+
+ gl_FragColor = diffuseColor;
+}
diff --git a/src/main/resources/assets/notenoughupdates/shaders/program/grayscale.json b/src/main/resources/assets/notenoughupdates/shaders/program/grayscale.json
new file mode 100644
index 00000000..048ceb9f
--- /dev/null
+++ b/src/main/resources/assets/notenoughupdates/shaders/program/grayscale.json
@@ -0,0 +1,17 @@
+{
+ "blend": {
+ "func": "add",
+ "srcrgb": "srcalpha",
+ "dstrgb": "1-srcalpha"
+ },
+ "vertex": "blit",
+ "fragment": "grayscale",
+ "attributes": [ "Position" ],
+ "samplers": [
+ { "name": "DiffuseSampler" }
+ ],
+ "uniforms": [
+ { "name": "ProjMat", "type": "matrix4x4", "count": 16, "values": [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ] },
+ { "name": "OutSize", "type": "float", "count": 2, "values": [ 1.0, 1.0 ] }
+ ]
+}