summary refs log tree commit diff
path: root/shader/tri.frag
diff options
context:
space:
mode:
Diffstat (limited to 'shader/tri.frag')
-rw-r--r--shader/tri.frag12
1 files changed, 11 insertions, 1 deletions
diff --git a/shader/tri.frag b/shader/tri.frag
index dea0868..f67a4e0 100644
--- a/shader/tri.frag
+++ b/shader/tri.frag
@@ -1,9 +1,19 @@
 #version 450
 
 layout(location = 0) in vec2 uv;
+layout(location = 1) in vec4 in_color;
+layout(location = 2) flat in int type;
+
 layout(location = 0) out vec4 out_color;
 
 void main(void) {
 	float n = 2 * length(uv - 0.5);
-	out_color = vec4(vec3(uv, 1) * (1.75 - n), float(n<1));
+	switch (type) {
+	case 0:
+		out_color = vec4(in_color.rgb, in_color.a * float(n<1));
+		break;
+	case 1:
+		out_color = vec4(in_color.rgb, in_color.a * (max(0.25 - n, 0) + max(1 - n, 0)) * 0.5);
+		break;
+	}
 }