// 7.12.3226 #pragma once const uint32_t kOverlayCull_comp_00000005[] = { 0x07230203,0x00010000,0x00080007,0x000000c9,0x00000000,0x00020011,0x00000001,0x0006000b, 0x00000001,0x4c534c47,0x6474732e,0x3035342e,0x00000000,0x0003000e,0x00000000,0x00000001, 0x0007000f,0x00000005,0x00000004,0x6e69616d,0x00000000,0x00000053,0x000000aa,0x00060010, 0x00000004,0x00000011,0x00000040,0x00000001,0x00000001,0x00030003,0x00000002,0x000001c2, 0x000b0004,0x455f4c47,0x735f5458,0x6c706d61,0x656c7265,0x745f7373,0x75747865,0x665f6572, 0x74636e75,0x736e6f69,0x00000000,0x00040005,0x00000004,0x6e69616d,0x00000000,0x00080005, 0x00000009,0x75636361,0x616c756d,0x69576574,0x74656764,0x31752873,0x0000003b,0x00040005, 0x00000008,0x61636f6c,0x0064496c,0x00080005,0x00000010,0x6c6c7563,0x67646957,0x28737465, 0x763b3175,0x763b3275,0x003b3275,0x00040005,0x0000000d,0x7366666f,0x00007465,0x00060005, 0x0000000e,0x636f6c62,0x6f6f436b,0x6f4c6472,0x00000077,0x00060005,0x0000000f,0x636f6c62, 0x6f6f436b,0x69486472,0x00006867,0x00070005,0x0000001a,0x65746e69,0x63657372,0x676e6974, 0x67646957,0x00737465,0x00040005,0x00000050,0x61636f6c,0x0064496c,0x00080005,0x00000053, 0x4c5f6c67,0x6c61636f,0x6f766e49,0x69746163,0x44496e6f,0x00000000,0x00060005,0x0000005a, 0x67646977,0x6f437465,0x7364726f,0x00000000,0x00070005,0x0000005d,0x67646957,0x6f437465, 0x6964726f,0x6574616e,0x00000073,0x00060006,0x0000005d,0x00000000,0x726f6f63,0x616e6964, 0x00736574,0x00030005,0x0000005f,0x00000000,0x00050005,0x00000068,0x65746e69,0x63657372, 0x00007374,0x00040005,0x0000007e,0x6c6c6162,0x0000746f,0x00060005,0x00000094,0x70617267, 0x636f4c68,0x64496c61,0x00000000,0x00050005,0x000000a9,0x4374756f,0x64726f6f,0x00000000, 0x00060005,0x000000aa,0x575f6c67,0x476b726f,0x70756f72,0x00004449,0x00060005,0x000000ad, 0x636f6c62,0x6f6f436b,0x6f4c6472,0x00000077,0x00060005,0x000000b1,0x636f6c62,0x6f6f436b, 0x69486472,0x00006867,0x00060005,0x000000b4,0x6c6c7563,0x69576465,0x74656764,0x00000073, 0x00070005,0x000000bf,0x6c6c7563,0x69576465,0x74656764,0x74754f73,0x00000000,0x00040047, 0x00000053,0x0000000b,0x0000001b,0x00040047,0x0000005c,0x00000006,0x00000010,0x00050048, 0x0000005d,0x00000000,0x00000023,0x00000000,0x00030047,0x0000005d,0x00000002,0x00040047, 0x0000005f,0x00000022,0x00000000,0x00040047,0x0000005f,0x00000021,0x00000001,0x00040047, 0x000000aa,0x0000000b,0x0000001a,0x00040047,0x000000bf,0x00000022,0x00000000,0x00040047, 0x000000bf,0x00000021,0x00000000,0x00030047,0x000000bf,0x00000019,0x00040047,0x000000c8, 0x0000000b,0x00000019,0x00020013,0x00000002,0x00030021,0x00000003,0x00000002,0x00040015, 0x00000006,0x00000020,0x00000000,0x00040021,0x00000007,0x00000002,0x00000006,0x00040017, 0x0000000b,0x00000006,0x00000002,0x00060021,0x0000000c,0x0000000b,0x00000006,0x0000000b, 0x0000000b,0x0004002b,0x00000006,0x00000012,0x00000010,0x00020014,0x00000013,0x0004002b, 0x00000006,0x00000017,0x00000020,0x0004001c,0x00000018,0x00000006,0x00000017,0x00040020, 0x00000019,0x00000004,0x00000018,0x0004003b,0x00000019,0x0000001a,0x00000004,0x00040020, 0x0000001c,0x00000004,0x00000006,0x0004002b,0x00000006,0x00000023,0x00000008,0x0004002b, 0x00000006,0x0000002e,0x00000004,0x0004002b,0x00000006,0x00000039,0x00000002,0x0004002b, 0x00000006,0x00000044,0x00000001,0x00040020,0x0000004f,0x00000007,0x00000006,0x00040017, 0x00000051,0x00000006,0x00000003,0x00040020,0x00000052,0x00000001,0x00000051,0x0004003b, 0x00000052,0x00000053,0x00000001,0x0004002b,0x00000006,0x00000054,0x00000000,0x00040020, 0x00000055,0x00000001,0x00000006,0x00040017,0x00000058,0x00000006,0x00000004,0x00040020, 0x00000059,0x00000007,0x00000058,0x0004002b,0x00000006,0x0000005b,0x00000040,0x0004001c, 0x0000005c,0x00000058,0x0000005b,0x0003001e,0x0000005d,0x0000005c,0x00040020,0x0000005e, 0x00000002,0x0000005d,0x0004003b,0x0000005e,0x0000005f,0x00000002,0x00040015,0x00000060, 0x00000020,0x00000001,0x0004002b,0x00000060,0x00000061,0x00000000,0x00040020,0x00000064, 0x00000002,0x00000058,0x00040020,0x00000067,0x00000007,0x00000013,0x00040017,0x00000072, 0x00000013,0x00000002,0x00040020,0x0000007d,0x00000007,0x0000000b,0x0005002c,0x0000000b, 0x0000007f,0x00000054,0x00000054,0x0004003b,0x00000052,0x000000aa,0x00000001,0x0005002c, 0x0000000b,0x000000af,0x00000023,0x00000023,0x00090019,0x000000bd,0x00000006,0x00000001, 0x00000000,0x00000000,0x00000000,0x00000002,0x0000001e,0x00040020,0x000000be,0x00000000, 0x000000bd,0x0004003b,0x000000be,0x000000bf,0x00000000,0x00040017,0x000000c2,0x00000060, 0x00000002,0x0006002c,0x00000051,0x000000c8,0x0000005b,0x00000044,0x00000044,0x00050036, 0x00000002,0x00000004,0x00000000,0x00000003,0x000200f8,0x00000005,0x0004003b,0x0000007d, 0x000000a9,0x00000007,0x0004003b,0x0000007d,0x000000ad,0x00000007,0x0004003b,0x0000007d, 0x000000b1,0x00000007,0x0004003b,0x0000007d,0x000000b4,0x00000007,0x0004003d,0x00000051, 0x000000ab,0x000000aa,0x0007004f,0x0000000b,0x000000ac,0x000000ab,0x000000ab,0x00000000, 0x00000001,0x0003003e,0x000000a9,0x000000ac,0x0004003d,0x0000000b,0x000000ae,0x000000a9, 0x00050084,0x0000000b,0x000000b0,0x000000ae,0x000000af,0x0003003e,0x000000ad,0x000000b0, 0x0004003d,0x0000000b,0x000000b2,0x000000ad,0x00050080,0x0000000b,0x000000b3,0x000000b2, 0x000000af,0x0003003e,0x000000b1,0x000000b3,0x0004003d,0x0000000b,0x000000b5,0x000000ad, 0x0004003d,0x0000000b,0x000000b6,0x000000b1,0x00070039,0x0000000b,0x000000b7,0x00000010, 0x00000054,0x000000b5,0x000000b6,0x0003003e,0x000000b4,0x000000b7,0x00050041,0x00000055, 0x000000b8,0x00000053,0x00000054,0x0004003d,0x00000006,0x000000b9,0x000000b8,0x000500aa, 0x00000013,0x000000ba,0x000000b9,0x00000054,0x000300f7,0x000000bc,0x00000000,0x000400fa, 0x000000ba,0x000000bb,0x000000bc,0x000200f8,0x000000bb,0x0004003d,0x000000bd,0x000000c0, 0x000000bf,0x0004003d,0x0000000b,0x000000c1,0x000000a9,0x0004007c,0x000000c2,0x000000c3, 0x000000c1,0x0004003d,0x0000000b,0x000000c4,0x000000b4,0x00050051,0x00000006,0x000000c5, 0x000000c4,0x00000000,0x00050051,0x00000006,0x000000c6,0x000000c4,0x00000001,0x00070050, 0x00000058,0x000000c7,0x000000c5,0x000000c6,0x00000054,0x00000054,0x00040063,0x000000c0, 0x000000c3,0x000000c7,0x000200f9,0x000000bc,0x000200f8,0x000000bc,0x000100fd,0x00010038, 0x00050036,0x00000002,0x00000009,0x00000000,0x00000007,0x00030037,0x00000006,0x00000008, 0x000200f8,0x0000000a,0x000500b0,0x00000013,0x00000014,0x00000008,0x00000012,0x000300f7, 0x00000016,0x00000000,0x000400fa,0x00000014,0x00000015,0x00000016,0x000200f8,0x00000015, 0x00050080,0x00000006,0x0000001b,0x00000008,0x00000012,0x00050041,0x0000001c,0x0000001d, 0x0000001a,0x0000001b,0x0004003d,0x00000006,0x0000001e,0x0000001d,0x00050041,0x0000001c, 0x0000001f,0x0000001a,0x00000008,0x0004003d,0x00000006,0x00000020,0x0000001f,0x000500c5, 0x00000006,0x00000021,0x00000020,0x0000001e,0x00050041,0x0000001c,0x00000022,0x0000001a, 0x00000008,0x0003003e,0x00000022,0x00000021,0x000500b0,0x00000013,0x00000024,0x00000008, 0x00000023,0x000300f7,0x00000026,0x00000000,0x000400fa,0x00000024,0x00000025,0x00000026, 0x000200f8,0x00000025,0x00050080,0x00000006,0x00000027,0x00000008,0x00000023,0x00050041, 0x0000001c,0x00000028,0x0000001a,0x00000027,0x0004003d,0x00000006,0x00000029,0x00000028, 0x00050041,0x0000001c,0x0000002a,0x0000001a,0x00000008,0x0004003d,0x00000006,0x0000002b, 0x0000002a,0x000500c5,0x00000006,0x0000002c,0x0000002b,0x00000029,0x00050041,0x0000001c, 0x0000002d,0x0000001a,0x00000008,0x0003003e,0x0000002d,0x0000002c,0x000500b0,0x00000013, 0x0000002f,0x00000008,0x0000002e,0x000300f7,0x00000031,0x00000000,0x000400fa,0x0000002f, 0x00000030,0x00000031,0x000200f8,0x00000030,0x00050080,0x00000006,0x00000032,0x00000008, 0x0000002e,0x00050041,0x0000001c,0x00000033,0x0000001a,0x00000032,0x0004003d,0x00000006, 0x00000034,0x00000033,0x00050041,0x0000001c,0x00000035,0x0000001a,0x00000008,0x0004003d, 0x00000006,0x00000036,0x00000035,0x000500c5,0x00000006,0x00000037,0x00000036,0x00000034, 0x00050041,0x0000001c,0x00000038,0x0000001a,0x00000008,0x0003003e,0x00000038,0x00000037, 0x000500b0,0x00000013,0x0000003a,0x00000008,0x00000039,0x000300f7,0x0000003c,0x00000000, 0x000400fa,0x0000003a,0x0000003b,0x0000003c,0x000200f8,0x0000003b,0x00050080,0x00000006, 0x0000003d,0x00000008,0x00000039,0x00050041,0x0000001c,0x0000003e,0x0000001a,0x0000003d, 0x0004003d,0x00000006,0x0000003f,0x0000003e,0x00050041,0x0000001c,0x00000040,0x0000001a, 0x00000008,0x0004003d,0x00000006,0x00000041,0x00000040,0x000500c5,0x00000006,0x00000042, 0x00000041,0x0000003f,0x00050041,0x0000001c,0x00000043,0x0000001a,0x00000008,0x0003003e, 0x00000043,0x00000042,0x000500b0,0x00000013,0x00000045,0x00000008,0x00000044,0x000300f7, 0x00000047,0x00000000,0x000400fa,0x00000045,0x00000046,0x00000047,0x000200f8,0x00000046, 0x00050080,0x00000006,0x00000048,0x00000008,0x00000044,0x00050041,0x0000001c,0x00000049, 0x0000001a,0x00000048,0x0004003d,0x00000006,0x0000004a,0x00000049,0x00050041,0x0000001c, 0x0000004b,0x0000001a,0x00000008,0x0004003d,0x00000006,0x0000004c,0x0000004b,0x000500c5, 0x00000006,0x0000004d,0x0000004c,0x0000004a,0x00050041,0x0000001c,0x0000004e,0x0000001a, 0x00000008,0x0003003e,0x0000004e,0x0000004d,0x000200f9,0x00000047,0x000200f8,0x00000047, 0x000200f9,0x0000003c,0x000200f8,0x0000003c,0x000200f9,0x00000031,0x000200f8,0x00000031, 0x000200f9,0x00000026,0x000200f8,0x00000026,0x000200f9,0x00000016,0x000200f8,0x00000016, 0x000100fd,0x00010038,0x00050036,0x0000000b,0x00000010,0x00000000,0x0000000c,0x00030037, 0x00000006,0x0000000d,0x00030037,0x0000000b,0x0000000e,0x00030037,0x0000000b,0x0000000f, 0x000200f8,0x00000011,0x0004003b,0x0000004f,0x00000050,0x00000007,0x0004003b,0x00000059, 0x0000005a,0x00000007,0x0004003b,0x00000067,0x00000068,0x00000007,0x0004003b,0x0000007d, 0x0000007e,0x00000007,0x0004003b,0x0000004f,0x00000094,0x00000007,0x00050041,0x00000055, 0x00000056,0x00000053,0x00000054,0x0004003d,0x00000006,0x00000057,0x00000056,0x0003003e, 0x00000050,0x00000057,0x0004003d,0x00000006,0x00000062,0x00000050,0x00050080,0x00000006, 0x00000063,0x0000000d,0x00000062,0x00060041,0x00000064,0x00000065,0x0000005f,0x00000061, 0x00000063,0x0004003d,0x00000058,0x00000066,0x00000065,0x0003003e,0x0000005a,0x00000066, 0x00050041,0x0000004f,0x00000069,0x0000005a,0x00000054,0x0004003d,0x00000006,0x0000006a, 0x00000069,0x00050041,0x0000004f,0x0000006b,0x0000005a,0x00000039,0x0004003d,0x00000006, 0x0000006c,0x0000006b,0x000500b0,0x00000013,0x0000006d,0x0000006a,0x0000006c,0x000300f7, 0x0000006f,0x00000000,0x000400fa,0x0000006d,0x0000006e,0x0000006f,0x000200f8,0x0000006e, 0x0004003d,0x00000058,0x00000070,0x0000005a,0x0007004f,0x0000000b,0x00000071,0x00000070, 0x00000070,0x00000000,0x00000001,0x000500b0,0x00000072,0x00000073,0x00000071,0x0000000f, 0x0004009b,0x00000013,0x00000074,0x00000073,0x000200f9,0x0000006f,0x000200f8,0x0000006f, 0x000700f5,0x00000013,0x00000075,0x0000006d,0x00000011,0x00000074,0x0000006e,0x000300f7, 0x00000077,0x00000000,0x000400fa,0x00000075,0x00000076,0x00000077,0x000200f8,0x00000076, 0x0004003d,0x00000058,0x00000078,0x0000005a,0x0007004f,0x0000000b,0x00000079,0x00000078, 0x00000078,0x00000002,0x00000003,0x000500ae,0x00000072,0x0000007a,0x00000079,0x0000000e, 0x0004009b,0x00000013,0x0000007b,0x0000007a,0x000200f9,0x00000077,0x000200f8,0x00000077, 0x000700f5,0x00000013,0x0000007c,0x00000075,0x0000006f,0x0000007b,0x00000076,0x0003003e, 0x00000068,0x0000007c,0x0003003e,0x0000007e,0x0000007f,0x0004003d,0x00000006,0x00000080, 0x00000050,0x000500b0,0x00000013,0x00000081,0x00000080,0x00000017,0x000300f7,0x00000083, 0x00000000,0x000400fa,0x00000081,0x00000082,0x00000093,0x000200f8,0x00000082,0x0004003d, 0x00000006,0x00000084,0x00000050,0x0004003d,0x00000013,0x00000085,0x00000068,0x000600a9, 0x00000006,0x00000086,0x00000085,0x00000044,0x00000054,0x0004003d,0x00000006,0x00000087, 0x00000050,0x000500c4,0x00000006,0x00000088,0x00000086,0x00000087,0x00050041,0x0000001c, 0x00000089,0x0000001a,0x00000084,0x0003003e,0x00000089,0x00000088,0x0004003d,0x00000006, 0x0000008a,0x00000050,0x00050039,0x00000002,0x0000008b,0x00000009,0x0000008a,0x0004003d, 0x00000006,0x0000008c,0x00000050,0x000500aa,0x00000013,0x0000008d,0x0000008c,0x00000054, 0x000300f7,0x0000008f,0x00000000,0x000400fa,0x0000008d,0x0000008e,0x0000008f,0x000200f8, 0x0000008e,0x00050041,0x0000001c,0x00000090,0x0000001a,0x00000061,0x0004003d,0x00000006, 0x00000091,0x00000090,0x00050041,0x0000004f,0x00000092,0x0000007e,0x00000054,0x0003003e, 0x00000092,0x00000091,0x000200f9,0x0000008f,0x000200f8,0x0000008f,0x000200f9,0x00000083, 0x000200f8,0x00000093,0x0004003d,0x00000006,0x00000095,0x00000050,0x00050082,0x00000006, 0x00000096,0x00000095,0x00000017,0x0003003e,0x00000094,0x00000096,0x0004003d,0x00000006, 0x00000097,0x00000094,0x0004003d,0x00000013,0x00000098,0x00000068,0x000600a9,0x00000006, 0x00000099,0x00000098,0x00000044,0x00000054,0x0004003d,0x00000006,0x0000009a,0x00000094, 0x000500c4,0x00000006,0x0000009b,0x00000099,0x0000009a,0x00050041,0x0000001c,0x0000009c, 0x0000001a,0x00000097,0x0003003e,0x0000009c,0x0000009b,0x0004003d,0x00000006,0x0000009d, 0x00000094,0x00050039,0x00000002,0x0000009e,0x00000009,0x0000009d,0x000200f9,0x00000083, 0x000200f8,0x00000083,0x0004003d,0x00000006,0x0000009f,0x00000050,0x000500aa,0x00000013, 0x000000a0,0x0000009f,0x00000054,0x000300f7,0x000000a2,0x00000000,0x000400fa,0x000000a0, 0x000000a1,0x000000a2,0x000200f8,0x000000a1,0x00050041,0x0000001c,0x000000a3,0x0000001a, 0x00000061,0x0004003d,0x00000006,0x000000a4,0x000000a3,0x00050041,0x0000004f,0x000000a5, 0x0000007e,0x00000044,0x0003003e,0x000000a5,0x000000a4,0x000200f9,0x000000a2,0x000200f8, 0x000000a2,0x0004003d,0x0000000b,0x000000a6,0x0000007e,0x000200fe,0x000000a6,0x00010038 }; // Generated from: // // #version 450 core // // #extension GL_EXT_samplerless_texture_functions : require // // layout(local_size_x = 64, local_size_y = 1, local_size_z = 1)in; // // layout(set = 0, binding = 0, rgba32ui)uniform writeonly uimage2D culledWidgetsOut; // // layout(set = 0, binding = 1)uniform WidgetCoordinates // { // uvec4 coordinates[32 + 32]; // }; // // shared uint intersectingWidgets[32]; // // void accumulateWidgets(const uint localId) // { // // if(localId < 16) // { // intersectingWidgets[localId]|= intersectingWidgets[localId + 16]; // if(localId < 8) // { // intersectingWidgets[localId]|= intersectingWidgets[localId + 8]; // if(localId < 4) // { // intersectingWidgets[localId]|= intersectingWidgets[localId + 4]; // if(localId < 2) // { // intersectingWidgets[localId]|= intersectingWidgets[localId + 2]; // if(localId < 1) // { // intersectingWidgets[localId]|= intersectingWidgets[localId + 1]; // } // } // } // } // } // } // // uvec2 cullWidgets(const uint offset, const uvec2 blockCoordLow, const uvec2 blockCoordHigh) // { // const uint localId = gl_LocalInvocationID . x; // const uvec4 widgetCoords = coordinates[offset + localId]; // // const bool intersects = widgetCoords . x < widgetCoords . z && // all(lessThan(widgetCoords . xy, blockCoordHigh))&& // all(greaterThanEqual(widgetCoords . zw, blockCoordLow)); // // uvec2 ballot = uvec2(0, 0); // // if(localId < 32) // { // intersectingWidgets[localId]= uint(intersects)<< localId; // accumulateWidgets(localId); // if(localId == 0) // { // ballot . x = intersectingWidgets[0]; // } // } // else // { // const uint graphLocalId = localId - 32; // intersectingWidgets[graphLocalId]= uint(intersects)<< graphLocalId; // accumulateWidgets(graphLocalId); // } // if(localId == 0) // { // ballot . y = intersectingWidgets[0]; // } // // return ballot; // // } // // void main() // { // // const uvec2 outCoord = gl_WorkGroupID . xy; // const uvec2 blockCoordLow = outCoord * uvec2(8, 8); // const uvec2 blockCoordHigh = blockCoordLow + uvec2(8, 8); // // uvec2 culledWidgets; // // culledWidgets = cullWidgets(0, blockCoordLow, blockCoordHigh); // // if(gl_LocalInvocationID . x == 0) // { // imageStore(culledWidgetsOut, ivec2(outCoord), uvec4(culledWidgets, 0, 0)); // } // }