yum-mirror/glslang

git clone https://git.yummers.dev/yum-mirror/glslang

Piers DaniellImplement support for GL_NV_push_constant_bank (#4157)6b3c0c6e

main
1.1 KiB45 linesraw
1#version 460
2#extension GL_NV_push_constant_bank : enable
3
4layout(std430, binding = 0) buffer ResultData {
5    uint bank[8];
6} resultData;
7
8layout(push_constant) uniform PushConstantBank0 {
9    uint data;
10} bank0;
11
12layout(push_constant, bank = 1) uniform PushConstantBank1 {
13    uint data;
14} bank1;
15
16layout(push_constant, bank = 2) uniform PushConstantBank2 {
17    uint data;
18} bank2;
19
20layout(push_constant, bank = 3) uniform PushConstantBank3 {
21    uint data;
22} bank3;
23
24layout(push_constant, bank = 4) uniform PushConstantBank4 {
25    uint data;
26} bank4;
27
28layout(push_constant, bank = 5) uniform PushConstantBank5 {
29    uint data;
30} bank5;
31
32layout(push_constant, bank = 6, member_offset = 64) uniform PushConstantBank6 {
33    uint data;
34} bank6_offset;
35
36void main() {
37    resultData.bank[0] = bank0.data;
38    resultData.bank[1] = bank1.data;
39    resultData.bank[2] = bank2.data;
40    resultData.bank[3] = bank3.data;
41    resultData.bank[4] = bank4.data;
42    resultData.bank[5] = bank5.data;
43    resultData.bank[6] = bank6_offset.data;
44    gl_Position = vec4(0, 0, 0, 0);
45}