From 9874f1a6c08b3df62eda76b658aa2ee029fe8874 Mon Sep 17 00:00:00 2001 From: Denis Pauk Date: Fri, 13 Oct 2023 00:26:21 +0300 Subject: [PATCH] vk:Reuse internal vertex format in poligon and skybox shaders --- src/client/refresh/vk/header/local.h | 9 +- src/client/refresh/vk/spirv/polygon_vert.c | 98 +++++------ .../refresh/vk/spirv/polygon_warp_vert.c | 155 +++++++++--------- src/client/refresh/vk/spirv/skybox_vert.c | 103 ++++++------ src/client/refresh/vk/vk_common.c | 8 +- src/client/refresh/vk/vk_mesh.c | 19 +-- src/client/refresh/vk/vk_surf.c | 52 ++---- src/client/refresh/vk/vk_warp.c | 38 ++--- stuff/shaders/polygon.vert | 3 + stuff/shaders/polygon_warp.vert | 3 + stuff/shaders/skybox.vert | 3 + 11 files changed, 232 insertions(+), 259 deletions(-) diff --git a/src/client/refresh/vk/header/local.h b/src/client/refresh/vk/header/local.h index 85a1a1b2..14a5df71 100644 --- a/src/client/refresh/vk/header/local.h +++ b/src/client/refresh/vk/header/local.h @@ -349,14 +349,7 @@ IMPLEMENTATION SPECIFIC FUNCTIONS qboolean Vkimp_CreateSurface(SDL_Window *window); -// buffers reallocate -typedef struct { - vec3_t vertex; - float texCoord[2]; -} polyvert_t; - -extern polyvert_t *verts_buffer; -extern mvtx_t *lmappolyverts_buffer; +extern mvtx_t *verts_buffer; void Mesh_Init (void); void Mesh_Free (void); diff --git a/src/client/refresh/vk/spirv/polygon_vert.c b/src/client/refresh/vk/spirv/polygon_vert.c index 938d059a..5a970c97 100644 --- a/src/client/refresh/vk/spirv/polygon_vert.c +++ b/src/client/refresh/vk/spirv/polygon_vert.c @@ -1,51 +1,57 @@ // 1112.2.0 #pragma once const uint32_t polygon_vert_spv[] = { - 0x07230203,0x00010000,0x0008000b,0x00000030,0x00000000,0x00020011,0x00000001,0x0006000b, + 0x07230203,0x00010000,0x0008000b,0x00000034,0x00000000,0x00020011,0x00000001,0x0006000b, 0x00000001,0x4c534c47,0x6474732e,0x3035342e,0x00000000,0x0003000e,0x00000000,0x00000001, - 0x000b000f,0x00000000,0x00000004,0x6e69616d,0x00000000,0x0000000a,0x00000016,0x00000022, - 0x00000024,0x00000026,0x0000002e,0x00030003,0x00000002,0x000001c2,0x00090004,0x415f4c47, - 0x735f4252,0x72617065,0x5f657461,0x64616873,0x6f5f7265,0x63656a62,0x00007374,0x00040005, - 0x00000004,0x6e69616d,0x00000000,0x00060005,0x00000008,0x505f6c67,0x65567265,0x78657472, - 0x00000000,0x00060006,0x00000008,0x00000000,0x505f6c67,0x7469736f,0x006e6f69,0x00030005, - 0x0000000a,0x00000000,0x00060005,0x0000000e,0x68737550,0x736e6f43,0x746e6174,0x00000000, - 0x00060006,0x0000000e,0x00000000,0x4d70766d,0x69727461,0x00000078,0x00030005,0x00000010, - 0x00006370,0x00050005,0x00000016,0x65566e69,0x78657472,0x00000000,0x00050005,0x00000022, - 0x43786574,0x64726f6f,0x00000000,0x00050005,0x00000024,0x65546e69,0x6f6f4378,0x00006472, - 0x00040005,0x00000026,0x6f6c6f63,0x00000072,0x00070005,0x00000027,0x66696e55,0x426d726f, - 0x65666675,0x6a624f72,0x00746365,0x00050006,0x00000027,0x00000000,0x6f6c6f63,0x00000072, - 0x00030005,0x00000029,0x006f6275,0x00050005,0x0000002e,0x65725461,0x6c6f6873,0x00000064, - 0x00050048,0x00000008,0x00000000,0x0000000b,0x00000000,0x00030047,0x00000008,0x00000002, - 0x00040048,0x0000000e,0x00000000,0x00000005,0x00050048,0x0000000e,0x00000000,0x00000023, - 0x00000000,0x00050048,0x0000000e,0x00000000,0x00000007,0x00000010,0x00030047,0x0000000e, - 0x00000002,0x00040047,0x00000016,0x0000001e,0x00000000,0x00040047,0x00000022,0x0000001e, - 0x00000000,0x00040047,0x00000024,0x0000001e,0x00000001,0x00040047,0x00000026,0x0000001e, - 0x00000001,0x00050048,0x00000027,0x00000000,0x00000023,0x00000000,0x00030047,0x00000027, - 0x00000002,0x00040047,0x00000029,0x00000022,0x00000001,0x00040047,0x00000029,0x00000021, - 0x00000000,0x00040047,0x0000002e,0x0000001e,0x00000002,0x00020013,0x00000002,0x00030021, - 0x00000003,0x00000002,0x00030016,0x00000006,0x00000020,0x00040017,0x00000007,0x00000006, - 0x00000004,0x0003001e,0x00000008,0x00000007,0x00040020,0x00000009,0x00000003,0x00000008, - 0x0004003b,0x00000009,0x0000000a,0x00000003,0x00040015,0x0000000b,0x00000020,0x00000001, - 0x0004002b,0x0000000b,0x0000000c,0x00000000,0x00040018,0x0000000d,0x00000007,0x00000004, - 0x0003001e,0x0000000e,0x0000000d,0x00040020,0x0000000f,0x00000009,0x0000000e,0x0004003b, - 0x0000000f,0x00000010,0x00000009,0x00040020,0x00000011,0x00000009,0x0000000d,0x00040017, - 0x00000014,0x00000006,0x00000003,0x00040020,0x00000015,0x00000001,0x00000014,0x0004003b, - 0x00000015,0x00000016,0x00000001,0x0004002b,0x00000006,0x00000018,0x3f800000,0x00040020, - 0x0000001e,0x00000003,0x00000007,0x00040017,0x00000020,0x00000006,0x00000002,0x00040020, - 0x00000021,0x00000003,0x00000020,0x0004003b,0x00000021,0x00000022,0x00000003,0x00040020, - 0x00000023,0x00000001,0x00000020,0x0004003b,0x00000023,0x00000024,0x00000001,0x0004003b, - 0x0000001e,0x00000026,0x00000003,0x0003001e,0x00000027,0x00000007,0x00040020,0x00000028, - 0x00000002,0x00000027,0x0004003b,0x00000028,0x00000029,0x00000002,0x00040020,0x0000002a, - 0x00000002,0x00000007,0x00040020,0x0000002d,0x00000003,0x00000006,0x0004003b,0x0000002d, - 0x0000002e,0x00000003,0x0004002b,0x00000006,0x0000002f,0x00000000,0x00050036,0x00000002, - 0x00000004,0x00000000,0x00000003,0x000200f8,0x00000005,0x00050041,0x00000011,0x00000012, - 0x00000010,0x0000000c,0x0004003d,0x0000000d,0x00000013,0x00000012,0x0004003d,0x00000014, - 0x00000017,0x00000016,0x00050051,0x00000006,0x00000019,0x00000017,0x00000000,0x00050051, - 0x00000006,0x0000001a,0x00000017,0x00000001,0x00050051,0x00000006,0x0000001b,0x00000017, - 0x00000002,0x00070050,0x00000007,0x0000001c,0x00000019,0x0000001a,0x0000001b,0x00000018, - 0x00050091,0x00000007,0x0000001d,0x00000013,0x0000001c,0x00050041,0x0000001e,0x0000001f, - 0x0000000a,0x0000000c,0x0003003e,0x0000001f,0x0000001d,0x0004003d,0x00000020,0x00000025, - 0x00000024,0x0003003e,0x00000022,0x00000025,0x00050041,0x0000002a,0x0000002b,0x00000029, - 0x0000000c,0x0004003d,0x00000007,0x0000002c,0x0000002b,0x0003003e,0x00000026,0x0000002c, - 0x0003003e,0x0000002e,0x0000002f,0x000100fd,0x00010038 + 0x000e000f,0x00000000,0x00000004,0x6e69616d,0x00000000,0x0000000a,0x00000016,0x00000022, + 0x00000024,0x00000026,0x0000002e,0x00000030,0x00000031,0x00000033,0x00030003,0x00000002, + 0x000001c2,0x00090004,0x415f4c47,0x735f4252,0x72617065,0x5f657461,0x64616873,0x6f5f7265, + 0x63656a62,0x00007374,0x00040005,0x00000004,0x6e69616d,0x00000000,0x00060005,0x00000008, + 0x505f6c67,0x65567265,0x78657472,0x00000000,0x00060006,0x00000008,0x00000000,0x505f6c67, + 0x7469736f,0x006e6f69,0x00030005,0x0000000a,0x00000000,0x00060005,0x0000000e,0x68737550, + 0x736e6f43,0x746e6174,0x00000000,0x00060006,0x0000000e,0x00000000,0x4d70766d,0x69727461, + 0x00000078,0x00030005,0x00000010,0x00006370,0x00050005,0x00000016,0x65566e69,0x78657472, + 0x00000000,0x00050005,0x00000022,0x43786574,0x64726f6f,0x00000000,0x00050005,0x00000024, + 0x65546e69,0x6f6f4378,0x00006472,0x00040005,0x00000026,0x6f6c6f63,0x00000072,0x00070005, + 0x00000027,0x66696e55,0x426d726f,0x65666675,0x6a624f72,0x00746365,0x00050006,0x00000027, + 0x00000000,0x6f6c6f63,0x00000072,0x00030005,0x00000029,0x006f6275,0x00050005,0x0000002e, + 0x65725461,0x6c6f6873,0x00000064,0x00060005,0x00000030,0x65546e69,0x6f6f4378,0x6d4c6472, + 0x00007061,0x00050005,0x00000031,0x6f4e6e69,0x6c616d72,0x00000000,0x00040005,0x00000033, + 0x6c466e69,0x00736761,0x00050048,0x00000008,0x00000000,0x0000000b,0x00000000,0x00030047, + 0x00000008,0x00000002,0x00040048,0x0000000e,0x00000000,0x00000005,0x00050048,0x0000000e, + 0x00000000,0x00000023,0x00000000,0x00050048,0x0000000e,0x00000000,0x00000007,0x00000010, + 0x00030047,0x0000000e,0x00000002,0x00040047,0x00000016,0x0000001e,0x00000000,0x00040047, + 0x00000022,0x0000001e,0x00000000,0x00040047,0x00000024,0x0000001e,0x00000001,0x00040047, + 0x00000026,0x0000001e,0x00000001,0x00050048,0x00000027,0x00000000,0x00000023,0x00000000, + 0x00030047,0x00000027,0x00000002,0x00040047,0x00000029,0x00000022,0x00000001,0x00040047, + 0x00000029,0x00000021,0x00000000,0x00040047,0x0000002e,0x0000001e,0x00000002,0x00040047, + 0x00000030,0x0000001e,0x00000002,0x00040047,0x00000031,0x0000001e,0x00000003,0x00040047, + 0x00000033,0x0000001e,0x00000004,0x00020013,0x00000002,0x00030021,0x00000003,0x00000002, + 0x00030016,0x00000006,0x00000020,0x00040017,0x00000007,0x00000006,0x00000004,0x0003001e, + 0x00000008,0x00000007,0x00040020,0x00000009,0x00000003,0x00000008,0x0004003b,0x00000009, + 0x0000000a,0x00000003,0x00040015,0x0000000b,0x00000020,0x00000001,0x0004002b,0x0000000b, + 0x0000000c,0x00000000,0x00040018,0x0000000d,0x00000007,0x00000004,0x0003001e,0x0000000e, + 0x0000000d,0x00040020,0x0000000f,0x00000009,0x0000000e,0x0004003b,0x0000000f,0x00000010, + 0x00000009,0x00040020,0x00000011,0x00000009,0x0000000d,0x00040017,0x00000014,0x00000006, + 0x00000003,0x00040020,0x00000015,0x00000001,0x00000014,0x0004003b,0x00000015,0x00000016, + 0x00000001,0x0004002b,0x00000006,0x00000018,0x3f800000,0x00040020,0x0000001e,0x00000003, + 0x00000007,0x00040017,0x00000020,0x00000006,0x00000002,0x00040020,0x00000021,0x00000003, + 0x00000020,0x0004003b,0x00000021,0x00000022,0x00000003,0x00040020,0x00000023,0x00000001, + 0x00000020,0x0004003b,0x00000023,0x00000024,0x00000001,0x0004003b,0x0000001e,0x00000026, + 0x00000003,0x0003001e,0x00000027,0x00000007,0x00040020,0x00000028,0x00000002,0x00000027, + 0x0004003b,0x00000028,0x00000029,0x00000002,0x00040020,0x0000002a,0x00000002,0x00000007, + 0x00040020,0x0000002d,0x00000003,0x00000006,0x0004003b,0x0000002d,0x0000002e,0x00000003, + 0x0004002b,0x00000006,0x0000002f,0x00000000,0x0004003b,0x00000023,0x00000030,0x00000001, + 0x0004003b,0x00000015,0x00000031,0x00000001,0x00040020,0x00000032,0x00000001,0x0000000b, + 0x0004003b,0x00000032,0x00000033,0x00000001,0x00050036,0x00000002,0x00000004,0x00000000, + 0x00000003,0x000200f8,0x00000005,0x00050041,0x00000011,0x00000012,0x00000010,0x0000000c, + 0x0004003d,0x0000000d,0x00000013,0x00000012,0x0004003d,0x00000014,0x00000017,0x00000016, + 0x00050051,0x00000006,0x00000019,0x00000017,0x00000000,0x00050051,0x00000006,0x0000001a, + 0x00000017,0x00000001,0x00050051,0x00000006,0x0000001b,0x00000017,0x00000002,0x00070050, + 0x00000007,0x0000001c,0x00000019,0x0000001a,0x0000001b,0x00000018,0x00050091,0x00000007, + 0x0000001d,0x00000013,0x0000001c,0x00050041,0x0000001e,0x0000001f,0x0000000a,0x0000000c, + 0x0003003e,0x0000001f,0x0000001d,0x0004003d,0x00000020,0x00000025,0x00000024,0x0003003e, + 0x00000022,0x00000025,0x00050041,0x0000002a,0x0000002b,0x00000029,0x0000000c,0x0004003d, + 0x00000007,0x0000002c,0x0000002b,0x0003003e,0x00000026,0x0000002c,0x0003003e,0x0000002e, + 0x0000002f,0x000100fd,0x00010038 }; diff --git a/src/client/refresh/vk/spirv/polygon_warp_vert.c b/src/client/refresh/vk/spirv/polygon_warp_vert.c index 0e660fd1..f3910914 100644 --- a/src/client/refresh/vk/spirv/polygon_warp_vert.c +++ b/src/client/refresh/vk/spirv/polygon_warp_vert.c @@ -1,80 +1,85 @@ // 1112.2.0 #pragma once const uint32_t polygon_warp_vert_spv[] = { - 0x07230203,0x00010000,0x0008000b,0x00000058,0x00000000,0x00020011,0x00000001,0x0006000b, + 0x07230203,0x00010000,0x0008000b,0x0000005c,0x00000000,0x00020011,0x00000001,0x0006000b, 0x00000001,0x4c534c47,0x6474732e,0x3035342e,0x00000000,0x0003000e,0x00000000,0x00000001, - 0x000b000f,0x00000000,0x00000004,0x6e69616d,0x00000000,0x0000000a,0x0000001d,0x00000029, - 0x0000002b,0x00000051,0x00000056,0x00030003,0x00000002,0x000001c2,0x00090004,0x415f4c47, - 0x735f4252,0x72617065,0x5f657461,0x64616873,0x6f5f7265,0x63656a62,0x00007374,0x00040005, - 0x00000004,0x6e69616d,0x00000000,0x00060005,0x00000008,0x505f6c67,0x65567265,0x78657472, - 0x00000000,0x00060006,0x00000008,0x00000000,0x505f6c67,0x7469736f,0x006e6f69,0x00030005, - 0x0000000a,0x00000000,0x00060005,0x0000000e,0x68737550,0x736e6f43,0x746e6174,0x00000000, - 0x00060006,0x0000000e,0x00000000,0x614d7076,0x78697274,0x00000000,0x00030005,0x00000010, - 0x00006370,0x00070005,0x00000014,0x66696e55,0x426d726f,0x65666675,0x6a624f72,0x00746365, - 0x00050006,0x00000014,0x00000000,0x65646f6d,0x0000006c,0x00050006,0x00000014,0x00000001, - 0x6f6c6f63,0x00000072,0x00050006,0x00000014,0x00000002,0x656d6974,0x00000000,0x00050006, - 0x00000014,0x00000003,0x6f726373,0x00006c6c,0x00030005,0x00000016,0x006f6275,0x00050005, - 0x0000001d,0x65566e69,0x78657472,0x00000000,0x00050005,0x00000029,0x43786574,0x64726f6f, - 0x00000000,0x00050005,0x0000002b,0x65546e69,0x6f6f4378,0x00006472,0x00040005,0x00000051, - 0x6f6c6f63,0x00000072,0x00050005,0x00000056,0x65725461,0x6c6f6873,0x00000064,0x00050048, - 0x00000008,0x00000000,0x0000000b,0x00000000,0x00030047,0x00000008,0x00000002,0x00040048, - 0x0000000e,0x00000000,0x00000005,0x00050048,0x0000000e,0x00000000,0x00000023,0x00000000, - 0x00050048,0x0000000e,0x00000000,0x00000007,0x00000010,0x00030047,0x0000000e,0x00000002, - 0x00040048,0x00000014,0x00000000,0x00000005,0x00050048,0x00000014,0x00000000,0x00000023, - 0x00000000,0x00050048,0x00000014,0x00000000,0x00000007,0x00000010,0x00050048,0x00000014, - 0x00000001,0x00000023,0x00000040,0x00050048,0x00000014,0x00000002,0x00000023,0x00000050, - 0x00050048,0x00000014,0x00000003,0x00000023,0x00000054,0x00030047,0x00000014,0x00000002, - 0x00040047,0x00000016,0x00000022,0x00000001,0x00040047,0x00000016,0x00000021,0x00000000, - 0x00040047,0x0000001d,0x0000001e,0x00000000,0x00040047,0x00000029,0x0000001e,0x00000000, - 0x00040047,0x0000002b,0x0000001e,0x00000001,0x00040047,0x00000051,0x0000001e,0x00000001, - 0x00040047,0x00000056,0x0000001e,0x00000002,0x00020013,0x00000002,0x00030021,0x00000003, - 0x00000002,0x00030016,0x00000006,0x00000020,0x00040017,0x00000007,0x00000006,0x00000004, - 0x0003001e,0x00000008,0x00000007,0x00040020,0x00000009,0x00000003,0x00000008,0x0004003b, - 0x00000009,0x0000000a,0x00000003,0x00040015,0x0000000b,0x00000020,0x00000001,0x0004002b, - 0x0000000b,0x0000000c,0x00000000,0x00040018,0x0000000d,0x00000007,0x00000004,0x0003001e, - 0x0000000e,0x0000000d,0x00040020,0x0000000f,0x00000009,0x0000000e,0x0004003b,0x0000000f, - 0x00000010,0x00000009,0x00040020,0x00000011,0x00000009,0x0000000d,0x0006001e,0x00000014, - 0x0000000d,0x00000007,0x00000006,0x00000006,0x00040020,0x00000015,0x00000002,0x00000014, - 0x0004003b,0x00000015,0x00000016,0x00000002,0x00040020,0x00000017,0x00000002,0x0000000d, - 0x00040017,0x0000001b,0x00000006,0x00000003,0x00040020,0x0000001c,0x00000001,0x0000001b, - 0x0004003b,0x0000001c,0x0000001d,0x00000001,0x0004002b,0x00000006,0x0000001f,0x3f800000, - 0x00040020,0x00000025,0x00000003,0x00000007,0x00040017,0x00000027,0x00000006,0x00000002, - 0x00040020,0x00000028,0x00000003,0x00000027,0x0004003b,0x00000028,0x00000029,0x00000003, - 0x00040020,0x0000002a,0x00000001,0x00000027,0x0004003b,0x0000002a,0x0000002b,0x00000001, - 0x0004002b,0x00000006,0x0000002d,0x40000000,0x0004002b,0x0000000b,0x0000002e,0x00000002, - 0x00040020,0x0000002f,0x00000002,0x00000006,0x00040015,0x00000033,0x00000020,0x00000000, - 0x0004002b,0x00000033,0x00000034,0x00000001,0x00040020,0x00000035,0x00000001,0x00000006, - 0x0004002b,0x00000006,0x00000038,0x4051eb85,0x0004002b,0x00000033,0x0000003f,0x00000000, - 0x0004002b,0x00000006,0x00000046,0x3d4ccccd,0x0004002b,0x0000000b,0x00000049,0x00000003, - 0x00040020,0x0000004c,0x00000003,0x00000006,0x0004003b,0x00000025,0x00000051,0x00000003, - 0x0004002b,0x0000000b,0x00000052,0x00000001,0x00040020,0x00000053,0x00000002,0x00000007, - 0x0004003b,0x0000004c,0x00000056,0x00000003,0x0004002b,0x00000006,0x00000057,0x00000000, - 0x00050036,0x00000002,0x00000004,0x00000000,0x00000003,0x000200f8,0x00000005,0x00050041, - 0x00000011,0x00000012,0x00000010,0x0000000c,0x0004003d,0x0000000d,0x00000013,0x00000012, - 0x00050041,0x00000017,0x00000018,0x00000016,0x0000000c,0x0004003d,0x0000000d,0x00000019, - 0x00000018,0x00050092,0x0000000d,0x0000001a,0x00000013,0x00000019,0x0004003d,0x0000001b, - 0x0000001e,0x0000001d,0x00050051,0x00000006,0x00000020,0x0000001e,0x00000000,0x00050051, - 0x00000006,0x00000021,0x0000001e,0x00000001,0x00050051,0x00000006,0x00000022,0x0000001e, - 0x00000002,0x00070050,0x00000007,0x00000023,0x00000020,0x00000021,0x00000022,0x0000001f, - 0x00050091,0x00000007,0x00000024,0x0000001a,0x00000023,0x00050041,0x00000025,0x00000026, - 0x0000000a,0x0000000c,0x0003003e,0x00000026,0x00000024,0x0004003d,0x00000027,0x0000002c, - 0x0000002b,0x00050041,0x0000002f,0x00000030,0x00000016,0x0000002e,0x0004003d,0x00000006, - 0x00000031,0x00000030,0x00050085,0x00000006,0x00000032,0x0000002d,0x00000031,0x00050041, - 0x00000035,0x00000036,0x0000002b,0x00000034,0x0004003d,0x00000006,0x00000037,0x00000036, - 0x00050085,0x00000006,0x00000039,0x00000037,0x00000038,0x00050081,0x00000006,0x0000003a, - 0x00000032,0x00000039,0x0006000c,0x00000006,0x0000003b,0x00000001,0x0000000d,0x0000003a, - 0x00050041,0x0000002f,0x0000003c,0x00000016,0x0000002e,0x0004003d,0x00000006,0x0000003d, - 0x0000003c,0x00050085,0x00000006,0x0000003e,0x0000002d,0x0000003d,0x00050041,0x00000035, - 0x00000040,0x0000002b,0x0000003f,0x0004003d,0x00000006,0x00000041,0x00000040,0x00050085, - 0x00000006,0x00000042,0x00000041,0x00000038,0x00050081,0x00000006,0x00000043,0x0000003e, - 0x00000042,0x0006000c,0x00000006,0x00000044,0x00000001,0x0000000d,0x00000043,0x00050050, - 0x00000027,0x00000045,0x0000003b,0x00000044,0x0005008e,0x00000027,0x00000047,0x00000045, - 0x00000046,0x00050081,0x00000027,0x00000048,0x0000002c,0x00000047,0x0003003e,0x00000029, - 0x00000048,0x00050041,0x0000002f,0x0000004a,0x00000016,0x00000049,0x0004003d,0x00000006, - 0x0000004b,0x0000004a,0x00050041,0x0000004c,0x0000004d,0x00000029,0x0000003f,0x0004003d, - 0x00000006,0x0000004e,0x0000004d,0x00050081,0x00000006,0x0000004f,0x0000004e,0x0000004b, - 0x00050041,0x0000004c,0x00000050,0x00000029,0x0000003f,0x0003003e,0x00000050,0x0000004f, - 0x00050041,0x00000053,0x00000054,0x00000016,0x00000052,0x0004003d,0x00000007,0x00000055, - 0x00000054,0x0003003e,0x00000051,0x00000055,0x0003003e,0x00000056,0x00000057,0x000100fd, - 0x00010038 + 0x000e000f,0x00000000,0x00000004,0x6e69616d,0x00000000,0x0000000a,0x0000001d,0x00000029, + 0x0000002b,0x00000051,0x00000056,0x00000058,0x00000059,0x0000005b,0x00030003,0x00000002, + 0x000001c2,0x00090004,0x415f4c47,0x735f4252,0x72617065,0x5f657461,0x64616873,0x6f5f7265, + 0x63656a62,0x00007374,0x00040005,0x00000004,0x6e69616d,0x00000000,0x00060005,0x00000008, + 0x505f6c67,0x65567265,0x78657472,0x00000000,0x00060006,0x00000008,0x00000000,0x505f6c67, + 0x7469736f,0x006e6f69,0x00030005,0x0000000a,0x00000000,0x00060005,0x0000000e,0x68737550, + 0x736e6f43,0x746e6174,0x00000000,0x00060006,0x0000000e,0x00000000,0x614d7076,0x78697274, + 0x00000000,0x00030005,0x00000010,0x00006370,0x00070005,0x00000014,0x66696e55,0x426d726f, + 0x65666675,0x6a624f72,0x00746365,0x00050006,0x00000014,0x00000000,0x65646f6d,0x0000006c, + 0x00050006,0x00000014,0x00000001,0x6f6c6f63,0x00000072,0x00050006,0x00000014,0x00000002, + 0x656d6974,0x00000000,0x00050006,0x00000014,0x00000003,0x6f726373,0x00006c6c,0x00030005, + 0x00000016,0x006f6275,0x00050005,0x0000001d,0x65566e69,0x78657472,0x00000000,0x00050005, + 0x00000029,0x43786574,0x64726f6f,0x00000000,0x00050005,0x0000002b,0x65546e69,0x6f6f4378, + 0x00006472,0x00040005,0x00000051,0x6f6c6f63,0x00000072,0x00050005,0x00000056,0x65725461, + 0x6c6f6873,0x00000064,0x00060005,0x00000058,0x65546e69,0x6f6f4378,0x6d4c6472,0x00007061, + 0x00050005,0x00000059,0x6f4e6e69,0x6c616d72,0x00000000,0x00040005,0x0000005b,0x6c466e69, + 0x00736761,0x00050048,0x00000008,0x00000000,0x0000000b,0x00000000,0x00030047,0x00000008, + 0x00000002,0x00040048,0x0000000e,0x00000000,0x00000005,0x00050048,0x0000000e,0x00000000, + 0x00000023,0x00000000,0x00050048,0x0000000e,0x00000000,0x00000007,0x00000010,0x00030047, + 0x0000000e,0x00000002,0x00040048,0x00000014,0x00000000,0x00000005,0x00050048,0x00000014, + 0x00000000,0x00000023,0x00000000,0x00050048,0x00000014,0x00000000,0x00000007,0x00000010, + 0x00050048,0x00000014,0x00000001,0x00000023,0x00000040,0x00050048,0x00000014,0x00000002, + 0x00000023,0x00000050,0x00050048,0x00000014,0x00000003,0x00000023,0x00000054,0x00030047, + 0x00000014,0x00000002,0x00040047,0x00000016,0x00000022,0x00000001,0x00040047,0x00000016, + 0x00000021,0x00000000,0x00040047,0x0000001d,0x0000001e,0x00000000,0x00040047,0x00000029, + 0x0000001e,0x00000000,0x00040047,0x0000002b,0x0000001e,0x00000001,0x00040047,0x00000051, + 0x0000001e,0x00000001,0x00040047,0x00000056,0x0000001e,0x00000002,0x00040047,0x00000058, + 0x0000001e,0x00000002,0x00040047,0x00000059,0x0000001e,0x00000003,0x00040047,0x0000005b, + 0x0000001e,0x00000004,0x00020013,0x00000002,0x00030021,0x00000003,0x00000002,0x00030016, + 0x00000006,0x00000020,0x00040017,0x00000007,0x00000006,0x00000004,0x0003001e,0x00000008, + 0x00000007,0x00040020,0x00000009,0x00000003,0x00000008,0x0004003b,0x00000009,0x0000000a, + 0x00000003,0x00040015,0x0000000b,0x00000020,0x00000001,0x0004002b,0x0000000b,0x0000000c, + 0x00000000,0x00040018,0x0000000d,0x00000007,0x00000004,0x0003001e,0x0000000e,0x0000000d, + 0x00040020,0x0000000f,0x00000009,0x0000000e,0x0004003b,0x0000000f,0x00000010,0x00000009, + 0x00040020,0x00000011,0x00000009,0x0000000d,0x0006001e,0x00000014,0x0000000d,0x00000007, + 0x00000006,0x00000006,0x00040020,0x00000015,0x00000002,0x00000014,0x0004003b,0x00000015, + 0x00000016,0x00000002,0x00040020,0x00000017,0x00000002,0x0000000d,0x00040017,0x0000001b, + 0x00000006,0x00000003,0x00040020,0x0000001c,0x00000001,0x0000001b,0x0004003b,0x0000001c, + 0x0000001d,0x00000001,0x0004002b,0x00000006,0x0000001f,0x3f800000,0x00040020,0x00000025, + 0x00000003,0x00000007,0x00040017,0x00000027,0x00000006,0x00000002,0x00040020,0x00000028, + 0x00000003,0x00000027,0x0004003b,0x00000028,0x00000029,0x00000003,0x00040020,0x0000002a, + 0x00000001,0x00000027,0x0004003b,0x0000002a,0x0000002b,0x00000001,0x0004002b,0x00000006, + 0x0000002d,0x40000000,0x0004002b,0x0000000b,0x0000002e,0x00000002,0x00040020,0x0000002f, + 0x00000002,0x00000006,0x00040015,0x00000033,0x00000020,0x00000000,0x0004002b,0x00000033, + 0x00000034,0x00000001,0x00040020,0x00000035,0x00000001,0x00000006,0x0004002b,0x00000006, + 0x00000038,0x4051eb85,0x0004002b,0x00000033,0x0000003f,0x00000000,0x0004002b,0x00000006, + 0x00000046,0x3d4ccccd,0x0004002b,0x0000000b,0x00000049,0x00000003,0x00040020,0x0000004c, + 0x00000003,0x00000006,0x0004003b,0x00000025,0x00000051,0x00000003,0x0004002b,0x0000000b, + 0x00000052,0x00000001,0x00040020,0x00000053,0x00000002,0x00000007,0x0004003b,0x0000004c, + 0x00000056,0x00000003,0x0004002b,0x00000006,0x00000057,0x00000000,0x0004003b,0x0000002a, + 0x00000058,0x00000001,0x0004003b,0x0000001c,0x00000059,0x00000001,0x00040020,0x0000005a, + 0x00000001,0x0000000b,0x0004003b,0x0000005a,0x0000005b,0x00000001,0x00050036,0x00000002, + 0x00000004,0x00000000,0x00000003,0x000200f8,0x00000005,0x00050041,0x00000011,0x00000012, + 0x00000010,0x0000000c,0x0004003d,0x0000000d,0x00000013,0x00000012,0x00050041,0x00000017, + 0x00000018,0x00000016,0x0000000c,0x0004003d,0x0000000d,0x00000019,0x00000018,0x00050092, + 0x0000000d,0x0000001a,0x00000013,0x00000019,0x0004003d,0x0000001b,0x0000001e,0x0000001d, + 0x00050051,0x00000006,0x00000020,0x0000001e,0x00000000,0x00050051,0x00000006,0x00000021, + 0x0000001e,0x00000001,0x00050051,0x00000006,0x00000022,0x0000001e,0x00000002,0x00070050, + 0x00000007,0x00000023,0x00000020,0x00000021,0x00000022,0x0000001f,0x00050091,0x00000007, + 0x00000024,0x0000001a,0x00000023,0x00050041,0x00000025,0x00000026,0x0000000a,0x0000000c, + 0x0003003e,0x00000026,0x00000024,0x0004003d,0x00000027,0x0000002c,0x0000002b,0x00050041, + 0x0000002f,0x00000030,0x00000016,0x0000002e,0x0004003d,0x00000006,0x00000031,0x00000030, + 0x00050085,0x00000006,0x00000032,0x0000002d,0x00000031,0x00050041,0x00000035,0x00000036, + 0x0000002b,0x00000034,0x0004003d,0x00000006,0x00000037,0x00000036,0x00050085,0x00000006, + 0x00000039,0x00000037,0x00000038,0x00050081,0x00000006,0x0000003a,0x00000032,0x00000039, + 0x0006000c,0x00000006,0x0000003b,0x00000001,0x0000000d,0x0000003a,0x00050041,0x0000002f, + 0x0000003c,0x00000016,0x0000002e,0x0004003d,0x00000006,0x0000003d,0x0000003c,0x00050085, + 0x00000006,0x0000003e,0x0000002d,0x0000003d,0x00050041,0x00000035,0x00000040,0x0000002b, + 0x0000003f,0x0004003d,0x00000006,0x00000041,0x00000040,0x00050085,0x00000006,0x00000042, + 0x00000041,0x00000038,0x00050081,0x00000006,0x00000043,0x0000003e,0x00000042,0x0006000c, + 0x00000006,0x00000044,0x00000001,0x0000000d,0x00000043,0x00050050,0x00000027,0x00000045, + 0x0000003b,0x00000044,0x0005008e,0x00000027,0x00000047,0x00000045,0x00000046,0x00050081, + 0x00000027,0x00000048,0x0000002c,0x00000047,0x0003003e,0x00000029,0x00000048,0x00050041, + 0x0000002f,0x0000004a,0x00000016,0x00000049,0x0004003d,0x00000006,0x0000004b,0x0000004a, + 0x00050041,0x0000004c,0x0000004d,0x00000029,0x0000003f,0x0004003d,0x00000006,0x0000004e, + 0x0000004d,0x00050081,0x00000006,0x0000004f,0x0000004e,0x0000004b,0x00050041,0x0000004c, + 0x00000050,0x00000029,0x0000003f,0x0003003e,0x00000050,0x0000004f,0x00050041,0x00000053, + 0x00000054,0x00000016,0x00000052,0x0004003d,0x00000007,0x00000055,0x00000054,0x0003003e, + 0x00000051,0x00000055,0x0003003e,0x00000056,0x00000057,0x000100fd,0x00010038 }; diff --git a/src/client/refresh/vk/spirv/skybox_vert.c b/src/client/refresh/vk/spirv/skybox_vert.c index ee3d837b..1f22beb6 100644 --- a/src/client/refresh/vk/spirv/skybox_vert.c +++ b/src/client/refresh/vk/spirv/skybox_vert.c @@ -1,54 +1,59 @@ // 1112.2.0 #pragma once const uint32_t skybox_vert_spv[] = { - 0x07230203,0x00010000,0x0008000b,0x00000032,0x00000000,0x00020011,0x00000001,0x0006000b, + 0x07230203,0x00010000,0x0008000b,0x00000036,0x00000000,0x00020011,0x00000001,0x0006000b, 0x00000001,0x4c534c47,0x6474732e,0x3035342e,0x00000000,0x0003000e,0x00000000,0x00000001, - 0x000b000f,0x00000000,0x00000004,0x6e69616d,0x00000000,0x0000000a,0x0000001d,0x00000029, - 0x0000002b,0x0000002d,0x00000030,0x00030003,0x00000002,0x000001c2,0x00090004,0x415f4c47, - 0x735f4252,0x72617065,0x5f657461,0x64616873,0x6f5f7265,0x63656a62,0x00007374,0x00040005, - 0x00000004,0x6e69616d,0x00000000,0x00060005,0x00000008,0x505f6c67,0x65567265,0x78657472, - 0x00000000,0x00060006,0x00000008,0x00000000,0x505f6c67,0x7469736f,0x006e6f69,0x00030005, - 0x0000000a,0x00000000,0x00060005,0x0000000e,0x68737550,0x736e6f43,0x746e6174,0x00000000, - 0x00060006,0x0000000e,0x00000000,0x614d7076,0x78697274,0x00000000,0x00030005,0x00000010, - 0x00006370,0x00070005,0x00000014,0x66696e55,0x426d726f,0x65666675,0x6a624f72,0x00746365, - 0x00050006,0x00000014,0x00000000,0x65646f6d,0x0000006c,0x00030005,0x00000016,0x006f6275, - 0x00050005,0x0000001d,0x65566e69,0x78657472,0x00000000,0x00050005,0x00000029,0x43786574, - 0x64726f6f,0x00000000,0x00050005,0x0000002b,0x65546e69,0x6f6f4378,0x00006472,0x00040005, - 0x0000002d,0x6f6c6f63,0x00000072,0x00050005,0x00000030,0x65725461,0x6c6f6873,0x00000064, - 0x00050048,0x00000008,0x00000000,0x0000000b,0x00000000,0x00030047,0x00000008,0x00000002, - 0x00040048,0x0000000e,0x00000000,0x00000005,0x00050048,0x0000000e,0x00000000,0x00000023, - 0x00000000,0x00050048,0x0000000e,0x00000000,0x00000007,0x00000010,0x00030047,0x0000000e, - 0x00000002,0x00040048,0x00000014,0x00000000,0x00000005,0x00050048,0x00000014,0x00000000, - 0x00000023,0x00000000,0x00050048,0x00000014,0x00000000,0x00000007,0x00000010,0x00030047, - 0x00000014,0x00000002,0x00040047,0x00000016,0x00000022,0x00000001,0x00040047,0x00000016, - 0x00000021,0x00000000,0x00040047,0x0000001d,0x0000001e,0x00000000,0x00040047,0x00000029, - 0x0000001e,0x00000000,0x00040047,0x0000002b,0x0000001e,0x00000001,0x00040047,0x0000002d, - 0x0000001e,0x00000001,0x00040047,0x00000030,0x0000001e,0x00000002,0x00020013,0x00000002, - 0x00030021,0x00000003,0x00000002,0x00030016,0x00000006,0x00000020,0x00040017,0x00000007, - 0x00000006,0x00000004,0x0003001e,0x00000008,0x00000007,0x00040020,0x00000009,0x00000003, - 0x00000008,0x0004003b,0x00000009,0x0000000a,0x00000003,0x00040015,0x0000000b,0x00000020, - 0x00000001,0x0004002b,0x0000000b,0x0000000c,0x00000000,0x00040018,0x0000000d,0x00000007, - 0x00000004,0x0003001e,0x0000000e,0x0000000d,0x00040020,0x0000000f,0x00000009,0x0000000e, - 0x0004003b,0x0000000f,0x00000010,0x00000009,0x00040020,0x00000011,0x00000009,0x0000000d, - 0x0003001e,0x00000014,0x0000000d,0x00040020,0x00000015,0x00000002,0x00000014,0x0004003b, - 0x00000015,0x00000016,0x00000002,0x00040020,0x00000017,0x00000002,0x0000000d,0x00040017, - 0x0000001b,0x00000006,0x00000003,0x00040020,0x0000001c,0x00000001,0x0000001b,0x0004003b, - 0x0000001c,0x0000001d,0x00000001,0x0004002b,0x00000006,0x0000001f,0x3f800000,0x00040020, - 0x00000025,0x00000003,0x00000007,0x00040017,0x00000027,0x00000006,0x00000002,0x00040020, - 0x00000028,0x00000003,0x00000027,0x0004003b,0x00000028,0x00000029,0x00000003,0x00040020, - 0x0000002a,0x00000001,0x00000027,0x0004003b,0x0000002a,0x0000002b,0x00000001,0x0004003b, - 0x00000025,0x0000002d,0x00000003,0x0007002c,0x00000007,0x0000002e,0x0000001f,0x0000001f, - 0x0000001f,0x0000001f,0x00040020,0x0000002f,0x00000003,0x00000006,0x0004003b,0x0000002f, - 0x00000030,0x00000003,0x0004002b,0x00000006,0x00000031,0x00000000,0x00050036,0x00000002, - 0x00000004,0x00000000,0x00000003,0x000200f8,0x00000005,0x00050041,0x00000011,0x00000012, - 0x00000010,0x0000000c,0x0004003d,0x0000000d,0x00000013,0x00000012,0x00050041,0x00000017, - 0x00000018,0x00000016,0x0000000c,0x0004003d,0x0000000d,0x00000019,0x00000018,0x00050092, - 0x0000000d,0x0000001a,0x00000013,0x00000019,0x0004003d,0x0000001b,0x0000001e,0x0000001d, - 0x00050051,0x00000006,0x00000020,0x0000001e,0x00000000,0x00050051,0x00000006,0x00000021, - 0x0000001e,0x00000001,0x00050051,0x00000006,0x00000022,0x0000001e,0x00000002,0x00070050, - 0x00000007,0x00000023,0x00000020,0x00000021,0x00000022,0x0000001f,0x00050091,0x00000007, - 0x00000024,0x0000001a,0x00000023,0x00050041,0x00000025,0x00000026,0x0000000a,0x0000000c, - 0x0003003e,0x00000026,0x00000024,0x0004003d,0x00000027,0x0000002c,0x0000002b,0x0003003e, - 0x00000029,0x0000002c,0x0003003e,0x0000002d,0x0000002e,0x0003003e,0x00000030,0x00000031, - 0x000100fd,0x00010038 + 0x000e000f,0x00000000,0x00000004,0x6e69616d,0x00000000,0x0000000a,0x0000001d,0x00000029, + 0x0000002b,0x0000002d,0x00000030,0x00000032,0x00000033,0x00000035,0x00030003,0x00000002, + 0x000001c2,0x00090004,0x415f4c47,0x735f4252,0x72617065,0x5f657461,0x64616873,0x6f5f7265, + 0x63656a62,0x00007374,0x00040005,0x00000004,0x6e69616d,0x00000000,0x00060005,0x00000008, + 0x505f6c67,0x65567265,0x78657472,0x00000000,0x00060006,0x00000008,0x00000000,0x505f6c67, + 0x7469736f,0x006e6f69,0x00030005,0x0000000a,0x00000000,0x00060005,0x0000000e,0x68737550, + 0x736e6f43,0x746e6174,0x00000000,0x00060006,0x0000000e,0x00000000,0x614d7076,0x78697274, + 0x00000000,0x00030005,0x00000010,0x00006370,0x00070005,0x00000014,0x66696e55,0x426d726f, + 0x65666675,0x6a624f72,0x00746365,0x00050006,0x00000014,0x00000000,0x65646f6d,0x0000006c, + 0x00030005,0x00000016,0x006f6275,0x00050005,0x0000001d,0x65566e69,0x78657472,0x00000000, + 0x00050005,0x00000029,0x43786574,0x64726f6f,0x00000000,0x00050005,0x0000002b,0x65546e69, + 0x6f6f4378,0x00006472,0x00040005,0x0000002d,0x6f6c6f63,0x00000072,0x00050005,0x00000030, + 0x65725461,0x6c6f6873,0x00000064,0x00060005,0x00000032,0x65546e69,0x6f6f4378,0x6d4c6472, + 0x00007061,0x00050005,0x00000033,0x6f4e6e69,0x6c616d72,0x00000000,0x00040005,0x00000035, + 0x6c466e69,0x00736761,0x00050048,0x00000008,0x00000000,0x0000000b,0x00000000,0x00030047, + 0x00000008,0x00000002,0x00040048,0x0000000e,0x00000000,0x00000005,0x00050048,0x0000000e, + 0x00000000,0x00000023,0x00000000,0x00050048,0x0000000e,0x00000000,0x00000007,0x00000010, + 0x00030047,0x0000000e,0x00000002,0x00040048,0x00000014,0x00000000,0x00000005,0x00050048, + 0x00000014,0x00000000,0x00000023,0x00000000,0x00050048,0x00000014,0x00000000,0x00000007, + 0x00000010,0x00030047,0x00000014,0x00000002,0x00040047,0x00000016,0x00000022,0x00000001, + 0x00040047,0x00000016,0x00000021,0x00000000,0x00040047,0x0000001d,0x0000001e,0x00000000, + 0x00040047,0x00000029,0x0000001e,0x00000000,0x00040047,0x0000002b,0x0000001e,0x00000001, + 0x00040047,0x0000002d,0x0000001e,0x00000001,0x00040047,0x00000030,0x0000001e,0x00000002, + 0x00040047,0x00000032,0x0000001e,0x00000002,0x00040047,0x00000033,0x0000001e,0x00000003, + 0x00040047,0x00000035,0x0000001e,0x00000004,0x00020013,0x00000002,0x00030021,0x00000003, + 0x00000002,0x00030016,0x00000006,0x00000020,0x00040017,0x00000007,0x00000006,0x00000004, + 0x0003001e,0x00000008,0x00000007,0x00040020,0x00000009,0x00000003,0x00000008,0x0004003b, + 0x00000009,0x0000000a,0x00000003,0x00040015,0x0000000b,0x00000020,0x00000001,0x0004002b, + 0x0000000b,0x0000000c,0x00000000,0x00040018,0x0000000d,0x00000007,0x00000004,0x0003001e, + 0x0000000e,0x0000000d,0x00040020,0x0000000f,0x00000009,0x0000000e,0x0004003b,0x0000000f, + 0x00000010,0x00000009,0x00040020,0x00000011,0x00000009,0x0000000d,0x0003001e,0x00000014, + 0x0000000d,0x00040020,0x00000015,0x00000002,0x00000014,0x0004003b,0x00000015,0x00000016, + 0x00000002,0x00040020,0x00000017,0x00000002,0x0000000d,0x00040017,0x0000001b,0x00000006, + 0x00000003,0x00040020,0x0000001c,0x00000001,0x0000001b,0x0004003b,0x0000001c,0x0000001d, + 0x00000001,0x0004002b,0x00000006,0x0000001f,0x3f800000,0x00040020,0x00000025,0x00000003, + 0x00000007,0x00040017,0x00000027,0x00000006,0x00000002,0x00040020,0x00000028,0x00000003, + 0x00000027,0x0004003b,0x00000028,0x00000029,0x00000003,0x00040020,0x0000002a,0x00000001, + 0x00000027,0x0004003b,0x0000002a,0x0000002b,0x00000001,0x0004003b,0x00000025,0x0000002d, + 0x00000003,0x0007002c,0x00000007,0x0000002e,0x0000001f,0x0000001f,0x0000001f,0x0000001f, + 0x00040020,0x0000002f,0x00000003,0x00000006,0x0004003b,0x0000002f,0x00000030,0x00000003, + 0x0004002b,0x00000006,0x00000031,0x00000000,0x0004003b,0x0000002a,0x00000032,0x00000001, + 0x0004003b,0x0000001c,0x00000033,0x00000001,0x00040020,0x00000034,0x00000001,0x0000000b, + 0x0004003b,0x00000034,0x00000035,0x00000001,0x00050036,0x00000002,0x00000004,0x00000000, + 0x00000003,0x000200f8,0x00000005,0x00050041,0x00000011,0x00000012,0x00000010,0x0000000c, + 0x0004003d,0x0000000d,0x00000013,0x00000012,0x00050041,0x00000017,0x00000018,0x00000016, + 0x0000000c,0x0004003d,0x0000000d,0x00000019,0x00000018,0x00050092,0x0000000d,0x0000001a, + 0x00000013,0x00000019,0x0004003d,0x0000001b,0x0000001e,0x0000001d,0x00050051,0x00000006, + 0x00000020,0x0000001e,0x00000000,0x00050051,0x00000006,0x00000021,0x0000001e,0x00000001, + 0x00050051,0x00000006,0x00000022,0x0000001e,0x00000002,0x00070050,0x00000007,0x00000023, + 0x00000020,0x00000021,0x00000022,0x0000001f,0x00050091,0x00000007,0x00000024,0x0000001a, + 0x00000023,0x00050041,0x00000025,0x00000026,0x0000000a,0x0000000c,0x0003003e,0x00000026, + 0x00000024,0x0004003d,0x00000027,0x0000002c,0x0000002b,0x0003003e,0x00000029,0x0000002c, + 0x0003003e,0x0000002d,0x0000002e,0x0003003e,0x00000030,0x00000031,0x000100fd,0x00010038 }; diff --git a/src/client/refresh/vk/vk_common.c b/src/client/refresh/vk/vk_common.c index dae97f05..ce9401ee 100644 --- a/src/client/refresh/vk/vk_common.c +++ b/src/client/refresh/vk/vk_common.c @@ -1412,7 +1412,7 @@ static void CreatePipelines() VK_LOAD_VERTFRAG_SHADERS(shaders, polygon, basic); vk_drawPolyPipeline.topology = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST; vk_drawPolyPipeline.blendOpts.blendEnable = VK_TRUE; - QVk_CreatePipeline(samplerUboDsLayouts, 2, &vertInfoRGB_RG, &vk_drawPolyPipeline, &vk_renderpasses[RP_WORLD], shaders, 2); + QVk_CreatePipeline(samplerUboDsLayouts, 2, &vertInfoMEM_VERTEX_T, &vk_drawPolyPipeline, &vk_renderpasses[RP_WORLD], shaders, 2); QVk_DebugSetObjectName((uint64_t)vk_drawPolyPipeline.layout, VK_OBJECT_TYPE_PIPELINE_LAYOUT, "Pipeline Layout: polygon"); QVk_DebugSetObjectName((uint64_t)vk_drawPolyPipeline.pl, VK_OBJECT_TYPE_PIPELINE, "Pipeline: polygon"); @@ -1428,7 +1428,7 @@ static void CreatePipelines() VK_LOAD_VERTFRAG_SHADERS(shaders, polygon_warp, basic); vk_drawPolyWarpPipeline.topology = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST; vk_drawPolyWarpPipeline.blendOpts.blendEnable = VK_TRUE; - QVk_CreatePipeline(samplerUboLmapDsLayouts, 2, &vertInfoRGB_RG, + QVk_CreatePipeline(samplerUboLmapDsLayouts, 2, &vertInfoMEM_VERTEX_T, &vk_drawPolyWarpPipeline, &vk_renderpasses[RP_WORLD], shaders, 2); QVk_DebugSetObjectName((uint64_t)vk_drawPolyWarpPipeline.layout, VK_OBJECT_TYPE_PIPELINE_LAYOUT, "Pipeline Layout: warped polygon (liquids)"); QVk_DebugSetObjectName((uint64_t)vk_drawPolyWarpPipeline.pl, VK_OBJECT_TYPE_PIPELINE, "Pipeline: warped polygon (liquids)"); @@ -1436,7 +1436,7 @@ static void CreatePipelines() // draw solid polygon with warp effect (liquid) pipeline VK_LOAD_VERTFRAG_SHADERS(shaders, polygon_warp, basic); vk_drawPolySolidWarpPipeline.topology = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST; - QVk_CreatePipeline(samplerUboLmapDsLayouts, 2, &vertInfoRGB_RG, + QVk_CreatePipeline(samplerUboLmapDsLayouts, 2, &vertInfoMEM_VERTEX_T, &vk_drawPolySolidWarpPipeline, &vk_renderpasses[RP_WORLD], shaders, 2); QVk_DebugSetObjectName((uint64_t)vk_drawPolySolidWarpPipeline.layout, @@ -1455,7 +1455,7 @@ static void CreatePipelines() // draw skybox pipeline VK_LOAD_VERTFRAG_SHADERS(shaders, skybox, basic); - QVk_CreatePipeline(samplerUboDsLayouts, 2, &vertInfoRGB_RG, &vk_drawSkyboxPipeline, &vk_renderpasses[RP_WORLD], shaders, 2); + QVk_CreatePipeline(samplerUboDsLayouts, 2, &vertInfoMEM_VERTEX_T, &vk_drawSkyboxPipeline, &vk_renderpasses[RP_WORLD], shaders, 2); QVk_DebugSetObjectName((uint64_t)vk_drawSkyboxPipeline.layout, VK_OBJECT_TYPE_PIPELINE_LAYOUT, "Pipeline Layout: skybox"); QVk_DebugSetObjectName((uint64_t)vk_drawSkyboxPipeline.pl, VK_OBJECT_TYPE_PIPELINE, "Pipeline: skybox"); diff --git a/src/client/refresh/vk/vk_mesh.c b/src/client/refresh/vk/vk_mesh.c index f683b45e..0f6adc4e 100644 --- a/src/client/refresh/vk/vk_mesh.c +++ b/src/client/refresh/vk/vk_mesh.c @@ -52,8 +52,7 @@ typedef struct { int firstVertex; } drawinfo_t; -polyvert_t *verts_buffer = NULL; -mvtx_t *lmappolyverts_buffer = NULL; +mvtx_t *verts_buffer = NULL; static drawinfo_t *drawInfo[2] = {NULL, NULL}; static modelvert *vertList[2] = {NULL, NULL}; static vec3_t *shadowverts = NULL; @@ -103,20 +102,13 @@ Mesh_VertsRealloc(int count) } shadowverts = ptr; - ptr = realloc(verts_buffer, verts_count * sizeof(polyvert_t)); + ptr = realloc(verts_buffer, verts_count * sizeof(mvtx_t)); if (!ptr) { return -1; } verts_buffer = ptr; - ptr = realloc(lmappolyverts_buffer, verts_count * sizeof(polyvert_t)); - if (!ptr) - { - return -1; - } - lmappolyverts_buffer = ptr; - ptr = realloc(vertList[0], verts_count * sizeof(modelvert)); if (!ptr) { @@ -158,7 +150,6 @@ void Mesh_Init (void) s_lerped = NULL; shadowverts = NULL; verts_buffer = NULL; - lmappolyverts_buffer = NULL; vertList[0] = NULL; vertList[1] = NULL; drawInfo[0] = NULL; @@ -204,12 +195,6 @@ void Mesh_Free (void) } verts_buffer = NULL; - if (lmappolyverts_buffer) - { - free(lmappolyverts_buffer); - } - lmappolyverts_buffer = NULL; - if (vertList[0]) { free(vertList[0]); diff --git a/src/client/refresh/vk/vk_surf.c b/src/client/refresh/vk/vk_surf.c index 1634813b..63105d5a 100644 --- a/src/client/refresh/vk/vk_surf.c +++ b/src/client/refresh/vk/vk_surf.c @@ -39,31 +39,15 @@ vklightmapstate_t vk_lms; static void DrawVkPoly(mpoly_t *p, image_t *texture, float *color) { - mvtx_t *v; - int i; - - if (Mesh_VertsRealloc(p->numverts)) - { - Com_Error(ERR_FATAL, "%s: can't allocate memory", __func__); - } - - v = p->verts; - for (i = 0; i < p->numverts; i++, v++) - { - VectorCopy(v->pos, verts_buffer[i].vertex); - verts_buffer[i].texCoord[0] = v->texCoord[0]; - verts_buffer[i].texCoord[1] = v->texCoord[1]; - } - QVk_BindPipeline(&vk_drawPolyPipeline); VkBuffer vbo; VkDeviceSize vboOffset; uint32_t uboOffset; VkDescriptorSet uboDescriptorSet; - uint8_t *vertData = QVk_GetVertexBuffer(sizeof(polyvert_t) * p->numverts, &vbo, &vboOffset); + uint8_t *vertData = QVk_GetVertexBuffer(sizeof(mvtx_t) * p->numverts, &vbo, &vboOffset); uint8_t *uboData = QVk_GetUniformBuffer(sizeof(float) * 4, &uboOffset, &uboDescriptorSet); - memcpy(vertData, verts_buffer, sizeof(polyvert_t) * p->numverts); + memcpy(vertData, p->verts, sizeof(mvtx_t) * p->numverts); memcpy(uboData, color, sizeof(float) * 4); VkDescriptorSet descriptorSets[] = { @@ -89,12 +73,12 @@ DrawVkPoly(mpoly_t *p, image_t *texture, float *color) DrawVkFlowingPoly -- version of DrawVkPoly that handles scrolling texture ================ */ -static void DrawVkFlowingPoly (msurface_t *fa, image_t *texture, float *color) +static void +DrawVkFlowingPoly(msurface_t *fa, image_t *texture, float *color) { - mvtx_t *v; - int i; + float scroll; mpoly_t *p; - float scroll; + int i; p = fa->polys; @@ -109,12 +93,10 @@ static void DrawVkFlowingPoly (msurface_t *fa, image_t *texture, float *color) Com_Error(ERR_FATAL, "%s: can't allocate memory", __func__); } - v = p->verts; - for (i = 0; i < p->numverts; i++, v++) + memcpy(verts_buffer, p->verts, sizeof(mvtx_t) * p->numverts); + for (i = 0; i < p->numverts; i++) { - VectorCopy(v->pos, verts_buffer[i].vertex); - verts_buffer[i].texCoord[0] = v->texCoord[0] + scroll; - verts_buffer[i].texCoord[1] = v->texCoord[1]; + verts_buffer[i].texCoord[0] += scroll; } QVk_BindPipeline(&vk_drawPolyPipeline); @@ -123,9 +105,9 @@ static void DrawVkFlowingPoly (msurface_t *fa, image_t *texture, float *color) VkDeviceSize vboOffset; uint32_t uboOffset; VkDescriptorSet uboDescriptorSet; - uint8_t *vertData = QVk_GetVertexBuffer(sizeof(polyvert_t) * p->numverts, &vbo, &vboOffset); + uint8_t *vertData = QVk_GetVertexBuffer(sizeof(mvtx_t) * p->numverts, &vbo, &vboOffset); uint8_t *uboData = QVk_GetUniformBuffer(sizeof(float) * 4, &uboOffset, &uboDescriptorSet); - memcpy(vertData, verts_buffer, sizeof(polyvert_t) * p->numverts); + memcpy(vertData, verts_buffer, sizeof(mvtx_t) * p->numverts); memcpy(uboData, color, sizeof(float) * 4); VkDescriptorSet descriptorSets[] = { @@ -504,15 +486,15 @@ Vk_RenderLightmappedPoly(msurface_t *surf, float *modelMatrix, float alpha, enti for (p = surf->polys; p; p = p->chain) { - memcpy(lmappolyverts_buffer, p->verts, sizeof(mvtx_t) * nv); + memcpy(verts_buffer, p->verts, sizeof(mvtx_t) * nv); for (i = 0; i < nv; i++) { - lmappolyverts_buffer[i].texCoord[0] += scroll; + verts_buffer[i].texCoord[0] += scroll; } uint8_t *vertData = QVk_GetVertexBuffer(sizeof(mvtx_t) * nv, &vbo, &vboOffset); - memcpy(vertData, lmappolyverts_buffer, sizeof(mvtx_t) * nv); + memcpy(vertData, verts_buffer, sizeof(mvtx_t) * nv); vkCmdBindVertexBuffers(vk_activeCmdbuffer, 0, 1, &vbo, &vboOffset); vkCmdBindIndexBuffer(vk_activeCmdbuffer, QVk_GetTriangleFanIbo((nv - 2) * 3), 0, VK_INDEX_TYPE_UINT16); @@ -559,17 +541,17 @@ Vk_RenderLightmappedPoly(msurface_t *surf, float *modelMatrix, float alpha, enti for (p = surf->polys; p; p = p->chain) { - memcpy(lmappolyverts_buffer, p->verts, sizeof(mvtx_t) * nv); + memcpy(verts_buffer, p->verts, sizeof(mvtx_t) * nv); for (i = 0; i < nv; i++) { - lmappolyverts_buffer[i].texCoord[0] += scroll; + verts_buffer[i].texCoord[0] += scroll; } VkBuffer vbo; VkDeviceSize vboOffset; uint8_t *vertData = QVk_GetVertexBuffer(sizeof(mvtx_t) * nv, &vbo, &vboOffset); - memcpy(vertData, lmappolyverts_buffer, sizeof(mvtx_t) * nv); + memcpy(vertData, verts_buffer, sizeof(mvtx_t) * nv); VkDescriptorSet descriptorSets[] = { image->vk_texture.descriptorSet, diff --git a/src/client/refresh/vk/vk_warp.c b/src/client/refresh/vk/vk_warp.c index 9faf8770..cdee950d 100644 --- a/src/client/refresh/vk/vk_warp.c +++ b/src/client/refresh/vk/vk_warp.c @@ -130,8 +130,6 @@ EmitWaterPolys(msurface_t *fa, image_t *texture, float *modelMatrix, for (bp = fa->polys; bp; bp = bp->next) { - mvtx_t *v; - p = bp; if (Mesh_VertsRealloc(p->numverts)) @@ -139,15 +137,15 @@ EmitWaterPolys(msurface_t *fa, image_t *texture, float *modelMatrix, Com_Error(ERR_FATAL, "%s: can't allocate memory", __func__); } - for (i = 0, v = p->verts; i < p->numverts; i++, v++) + memcpy(verts_buffer, p->verts, sizeof(mvtx_t) * p->numverts); + for (i = 0; i < p->numverts; i++) { - VectorCopy(v->pos, verts_buffer[i].vertex); - verts_buffer[i].texCoord[0] = v->texCoord[0] / 64.f; - verts_buffer[i].texCoord[1] = v->texCoord[1] / 64.f; + verts_buffer[i].texCoord[0] /= 64.f; + verts_buffer[i].texCoord[1] /= 64.f; } - uint8_t *vertData = QVk_GetVertexBuffer(sizeof(polyvert_t) * p->numverts, &vbo, &vboOffset); - memcpy(vertData, verts_buffer, sizeof(polyvert_t) * p->numverts); + uint8_t *vertData = QVk_GetVertexBuffer(sizeof(mvtx_t) * p->numverts, &vbo, &vboOffset); + memcpy(vertData, verts_buffer, sizeof(mvtx_t) * p->numverts); vkCmdBindVertexBuffers(vk_activeCmdbuffer, 0, 1, &vbo, &vboOffset); vkCmdBindIndexBuffer(vk_activeCmdbuffer, QVk_GetTriangleFanIbo((p->numverts - 2) * 3), 0, VK_INDEX_TYPE_UINT16); @@ -231,25 +229,15 @@ R_DrawSkyBox(void) R_MakeSkyVec(skymaxs[0][i], skymins[1][i], i, &skyVerts[3], farsee, sky_min, sky_max); - float verts[] = { - skyVerts[0].pos[0], skyVerts[0].pos[1], skyVerts[0].pos[2], - skyVerts[0].texCoord[0], skyVerts[0].texCoord[1], - skyVerts[1].pos[0], skyVerts[1].pos[1], skyVerts[1].pos[2], - skyVerts[1].texCoord[0], skyVerts[1].texCoord[1], - skyVerts[2].pos[0], skyVerts[2].pos[1], skyVerts[2].pos[2], - skyVerts[2].texCoord[0], skyVerts[2].texCoord[1], - skyVerts[0].pos[0], skyVerts[0].pos[1], skyVerts[0].pos[2], - skyVerts[0].texCoord[0], skyVerts[0].texCoord[1], - skyVerts[2].pos[0], skyVerts[2].pos[1], skyVerts[2].pos[2], - skyVerts[2].texCoord[0], skyVerts[2].texCoord[1], - skyVerts[3].pos[0], skyVerts[3].pos[1], skyVerts[3].pos[2], - skyVerts[3].texCoord[0], skyVerts[3].texCoord[1] - }; - VkBuffer vbo; VkDeviceSize vboOffset; - uint8_t *vertData = QVk_GetVertexBuffer(sizeof(verts), &vbo, &vboOffset); - memcpy(vertData, verts, sizeof(verts)); + uint8_t *vertData = QVk_GetVertexBuffer(sizeof(mvtx_t) * 6, &vbo, &vboOffset); + memcpy(vertData + sizeof(mvtx_t) * 0, &skyVerts[0], sizeof(mvtx_t)); + memcpy(vertData + sizeof(mvtx_t) * 1, &skyVerts[1], sizeof(mvtx_t)); + memcpy(vertData + sizeof(mvtx_t) * 2, &skyVerts[2], sizeof(mvtx_t)); + memcpy(vertData + sizeof(mvtx_t) * 3, &skyVerts[0], sizeof(mvtx_t)); + memcpy(vertData + sizeof(mvtx_t) * 4, &skyVerts[2], sizeof(mvtx_t)); + memcpy(vertData + sizeof(mvtx_t) * 5, &skyVerts[3], sizeof(mvtx_t)); VkDescriptorSet descriptorSets[] = { sky_images[skytexorder[i]]->vk_texture.descriptorSet, diff --git a/stuff/shaders/polygon.vert b/stuff/shaders/polygon.vert index 120a52fc..e319e0d4 100644 --- a/stuff/shaders/polygon.vert +++ b/stuff/shaders/polygon.vert @@ -3,6 +3,9 @@ layout(location = 0) in vec3 inVertex; layout(location = 1) in vec2 inTexCoord; +layout(location = 2) in vec2 inTexCoordLmap; +layout(location = 3) in vec3 inNormal; +layout(location = 4) in int inFlags; layout(push_constant) uniform PushConstant { diff --git a/stuff/shaders/polygon_warp.vert b/stuff/shaders/polygon_warp.vert index 609a2c02..86ed0cb7 100644 --- a/stuff/shaders/polygon_warp.vert +++ b/stuff/shaders/polygon_warp.vert @@ -3,6 +3,9 @@ layout(location = 0) in vec3 inVertex; layout(location = 1) in vec2 inTexCoord; +layout(location = 2) in vec2 inTexCoordLmap; +layout(location = 3) in vec3 inNormal; +layout(location = 4) in int inFlags; layout(push_constant) uniform PushConstant { diff --git a/stuff/shaders/skybox.vert b/stuff/shaders/skybox.vert index 348777c0..25a30319 100644 --- a/stuff/shaders/skybox.vert +++ b/stuff/shaders/skybox.vert @@ -3,6 +3,9 @@ layout(location = 0) in vec3 inVertex; layout(location = 1) in vec2 inTexCoord; +layout(location = 2) in vec2 inTexCoordLmap; +layout(location = 3) in vec3 inNormal; +layout(location = 4) in int inFlags; layout(push_constant) uniform PushConstant {