diff --git a/libs/models/alias/vulkan_model_alias.c b/libs/models/alias/vulkan_model_alias.c
index a5520217c..832541071 100644
--- a/libs/models/alias/vulkan_model_alias.c
+++ b/libs/models/alias/vulkan_model_alias.c
@@ -300,12 +300,13 @@ Vulkan_Mod_MakeAliasModelDisplayLists (model_t *m, aliashdr_t *hdr, void *_m,
 	}
 
 	// now build the indices for DrawElements
-	for (i = 0; i < hdr->mdl.numverts; i++) {
-		indexmap[i] = indexmap[i] != -1 ? indexmap[i] : i;
-	}
 	for (i = 0; i < numtris; i++) {
 		for (j = 0; j < 3; j++) {
-			indices[3 * i + j] = indexmap[triangles.a[i].vertindex[j]];
+			int         vind = triangles.a[i].vertindex[j];
+			if (stverts.a[vind].onseam && !triangles.a[i].facesfront) {
+				vind = indexmap[vind];
+			}
+			indices[3 * i + j] = vind;
 		}
 	}
 	// finished with indexmap
diff --git a/libs/video/renderer/vulkan/alias.frag b/libs/video/renderer/vulkan/alias.frag
index 8fb794f47..513b92d2a 100644
--- a/libs/video/renderer/vulkan/alias.frag
+++ b/libs/video/renderer/vulkan/alias.frag
@@ -1,4 +1,8 @@
 #version 450
+layout (set = 0, binding = 2) uniform sampler2D Texture;
+layout (set = 0, binding = 3) uniform sampler2D GlowMap;
+layout (set = 0, binding = 4) uniform sampler2D ColorA;
+layout (set = 0, binding = 5) uniform sampler2D ColorB;
 /*
 layout (set = 2, binding = 0) uniform sampler2D Texture;
 layout (set = 2, binding = 1) uniform sampler2D GlowMap;
@@ -38,11 +42,10 @@ main (void)
 	vec4        c;
 	int         i;
 	vec3        light = vec3 (0);
-/*
 	c = texture (Texture, st);
 	c += texture (ColorA, st);
 	c += texture (ColorB, st);
-	c += texture (GlowMap, st);
+/*
 	if (MaxLights > 0) {
 		for (i = 0; i < light_count; i++) {
 			vec3 dist = lights[i].position - position;
@@ -51,7 +54,9 @@ main (void)
 			light += lights[i].color * mag * lights[i].dist / dd;
 		}
 	}
-	frag_color = c * vec4(light, 1);//fogBlend (c);
+	c *= vec4 (light, 1);
 */
-	frag_color = vec4((normal + 1)/2, 1);
+	c += texture (GlowMap, st);
+	//frag_color = vec4((normal + 1)/2, 1);
+	frag_color = c;//fogBlend (c);
 }
diff --git a/libs/video/renderer/vulkan/vulkan_alias.c b/libs/video/renderer/vulkan/vulkan_alias.c
index 3fd17c0b1..6d1628bc0 100644
--- a/libs/video/renderer/vulkan/vulkan_alias.c
+++ b/libs/video/renderer/vulkan/vulkan_alias.c
@@ -123,7 +123,6 @@ Vulkan_DrawAlias (struct entity_s *ent, struct vulkan_ctx_s *ctx)
 	dfunc->vkCmdPushConstants (aframe->cmd, actx->layout,
 							   VK_SHADER_STAGE_VERTEX_BIT,
 							   64, sizeof (float), &blend);
-	if (0) {
 	aframe->imageInfo[0].imageView = get_view (skin->tex, ctx->default_white);
 	aframe->imageInfo[1].imageView = get_view (skin->glow, ctx->default_black);
 	aframe->imageInfo[2].imageView = get_view (skin->colora,
@@ -133,10 +132,9 @@ Vulkan_DrawAlias (struct entity_s *ent, struct vulkan_ctx_s *ctx)
 	dfunc->vkCmdPushDescriptorSetKHR (aframe->cmd,
 									  VK_PIPELINE_BIND_POINT_GRAPHICS,
 									  actx->layout,
-									  ALIAS_BUFFER_INFOS, ALIAS_IMAGE_INFOS,
+									  0, ALIAS_IMAGE_INFOS,
 									  aframe->descriptors
 									  + ALIAS_BUFFER_INFOS);
-	}
 	dfunc->vkCmdDrawIndexed (aframe->cmd, 3 * hdr->mdl.numtris, 1, 0, 0, 0);
 }
 
@@ -303,7 +301,7 @@ Vulkan_Alias_Init (vulkan_ctx_t *ctx)
 			aframe->imageInfo[j].sampler = actx->sampler;
 			int k = j + ALIAS_BUFFER_INFOS;
 			aframe->descriptors[k] = base_image_write;
-			aframe->descriptors[k].dstBinding = j;
+			aframe->descriptors[k].dstBinding = k;
 			aframe->descriptors[k].pImageInfo = &aframe->imageInfo[j];
 		}
 	}