#version 460 #extension GL_NV_push_constant_bank : enable layout(std430, binding = 0) buffer ResultData { uint bank[8]; } resultData; layout(push_constant) uniform PushConstantBank0 { uint data; } bank0; layout(push_constant, bank = 1) uniform PushConstantBank1 { uint data; } bank1; layout(push_constant, bank = 2) uniform PushConstantBank2 { uint data; } bank2; layout(push_constant, bank = 3) uniform PushConstantBank3 { uint data; } bank3; layout(push_constant, bank = 4) uniform PushConstantBank4 { uint data; } bank4; layout(push_constant, bank = 5) uniform PushConstantBank5 { uint data; } bank5; layout(push_constant, bank = 6, member_offset = 64) uniform PushConstantBank6 { uint data; } bank6_offset; void main() { resultData.bank[0] = bank0.data; resultData.bank[1] = bank1.data; resultData.bank[2] = bank2.data; resultData.bank[3] = bank3.data; resultData.bank[4] = bank4.data; resultData.bank[5] = bank5.data; resultData.bank[6] = bank6_offset.data; gl_Position = vec4(0, 0, 0, 0); }