Index: shaders/overlay.frag
===================================================================
--- shaders/overlay.frag	(revision e5d4acafffa467127203d6f24eff7cd0da816759)
+++ shaders/overlay.frag	(revision 301d0d470c82c5948b168e05240b05caa640455a)
@@ -4,7 +4,5 @@
 layout(binding = 0) uniform sampler2D uiTexSampler;
 
-layout(location = 0) in vec3 fragColor;
-layout(location = 1) in vec2 fragTexCoord;
-layout(location = 2) flat in uint isOverlay;
+layout(location = 0) in vec2 fragTexCoord;
 
 layout(location = 0) out vec4 outColor;
@@ -12,9 +10,3 @@
 void main() {
    outColor = texture(uiTexSampler, fragTexCoord);
-
-   if (isOverlay == 1) {
-      outColor = texture(uiTexSampler, fragTexCoord);
-   } else {
-      outColor = vec4(fragColor * texture(uiTexSampler, fragTexCoord).rgb, 1.0);
-   }
 }
Index: shaders/overlay.vert
===================================================================
--- shaders/overlay.vert	(revision e5d4acafffa467127203d6f24eff7cd0da816759)
+++ shaders/overlay.vert	(revision 301d0d470c82c5948b168e05240b05caa640455a)
@@ -3,21 +3,11 @@
 
 layout(location = 0) in vec3 inPosition;
-layout(location = 1) in vec3 inColor;
-layout(location = 2) in vec2 inTexCoord;
+layout(location = 1) in vec2 inTexCoord;
 
-layout(location = 0) out vec3 fragColor;
-layout(location = 1) out vec2 fragTexCoord;
-layout(location = 2) out uint isOverlay;
+layout(location = 0) out vec2 fragTexCoord;
 
 void main() {
-   if (gl_VertexIndex < 0) {
-      fragColor = inColor;
-      isOverlay = 0;
-   } else {
-      fragColor = inColor;
-      isOverlay = 1;
-   }
+   fragTexCoord = inTexCoord;
 
-   fragTexCoord = inTexCoord;
    gl_Position = vec4(inPosition, 1.0);
 }
Index: shaders/scene.frag
===================================================================
--- shaders/scene.frag	(revision e5d4acafffa467127203d6f24eff7cd0da816759)
+++ shaders/scene.frag	(revision 301d0d470c82c5948b168e05240b05caa640455a)
@@ -3,17 +3,11 @@
 
 layout(binding = 1) uniform sampler2D texSampler;
-layout(binding = 2) uniform sampler2D uiTexSampler;
 
 layout(location = 0) in vec3 fragColor;
 layout(location = 1) in vec2 fragTexCoord;
-layout(location = 2) flat in uint isOverlay;
 
 layout(location = 0) out vec4 outColor;
 
 void main() {
-   if (isOverlay == 1) {
-      outColor = texture(uiTexSampler, fragTexCoord);
-   } else {
-      outColor = vec4(fragColor * texture(texSampler, fragTexCoord).rgb, 1.0);
-   }
+   outColor = vec4(fragColor * texture(texSampler, fragTexCoord).rgb, 1.0);
 }
Index: shaders/scene.vert
===================================================================
--- shaders/scene.vert	(revision e5d4acafffa467127203d6f24eff7cd0da816759)
+++ shaders/scene.vert	(revision 301d0d470c82c5948b168e05240b05caa640455a)
@@ -14,17 +14,9 @@
 layout(location = 0) out vec3 fragColor;
 layout(location = 1) out vec2 fragTexCoord;
-layout(location = 2) out uint isOverlay;
 
 void main() {
-   if (gl_VertexIndex < 8) {
-      gl_Position = ubo.proj * ubo.view * ubo.model * vec4(inPosition, 1.0);
-      fragColor = inColor;
-      isOverlay = 0;
-   } else {
-      gl_Position = vec4(inPosition, 1.0);
-      fragColor = vec3(1.0, 1.0, 1.0);
-      isOverlay = 1;
-   }
+   fragColor = inColor;
+   fragTexCoord = inTexCoord;
 
-   fragTexCoord = inTexCoord;
+   gl_Position = ubo.proj * ubo.view * ubo.model * vec4(inPosition, 1.0);
 }
