Index: shaders/overlay.frag
===================================================================
--- shaders/overlay.frag	(revision c8c6da81cef243ff820763829abe316ce3d2e34a)
+++ shaders/overlay.frag	(revision e5d4acafffa467127203d6f24eff7cd0da816759)
@@ -2,6 +2,5 @@
 #extension GL_ARB_separate_shader_objects : enable
 
-layout(binding = 1) uniform sampler2D texSampler;
-layout(binding = 2) uniform sampler2D uiTexSampler;
+layout(binding = 0) uniform sampler2D uiTexSampler;
 
 layout(location = 0) in vec3 fragColor;
@@ -12,8 +11,10 @@
 
 void main() {
+   outColor = texture(uiTexSampler, fragTexCoord);
+
    if (isOverlay == 1) {
       outColor = texture(uiTexSampler, fragTexCoord);
    } else {
-      outColor = vec4(fragColor * texture(texSampler, fragTexCoord).rgb, 1.0);
+      outColor = vec4(fragColor * texture(uiTexSampler, fragTexCoord).rgb, 1.0);
    }
 }
Index: shaders/overlay.vert
===================================================================
--- shaders/overlay.vert	(revision c8c6da81cef243ff820763829abe316ce3d2e34a)
+++ shaders/overlay.vert	(revision e5d4acafffa467127203d6f24eff7cd0da816759)
@@ -1,10 +1,4 @@
 #version 450
 #extension GL_ARB_separate_shader_objects : enable
-
-layout (binding = 0) uniform UniformBufferObject {
-   mat4 model;
-   mat4 view;
-   mat4 proj;
-} ubo;
 
 layout(location = 0) in vec3 inPosition;
@@ -17,14 +11,13 @@
 
 void main() {
-   if (gl_VertexIndex < 8) {
-      gl_Position = ubo.proj * ubo.view * ubo.model * vec4(inPosition, 1.0);
+   if (gl_VertexIndex < 0) {
       fragColor = inColor;
       isOverlay = 0;
    } else {
-      gl_Position = vec4(inPosition, 1.0);
-      fragColor = vec3(1.0, 1.0, 1.0);
+      fragColor = inColor;
       isOverlay = 1;
    }
 
    fragTexCoord = inTexCoord;
+   gl_Position = vec4(inPosition, 1.0);
 }
