diff options
Diffstat (limited to '3rdparty/bgfx/3rdparty/spirv-cross/reference/shaders/comp/struct-layout.comp')
-rw-r--r-- | 3rdparty/bgfx/3rdparty/spirv-cross/reference/shaders/comp/struct-layout.comp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/3rdparty/bgfx/3rdparty/spirv-cross/reference/shaders/comp/struct-layout.comp b/3rdparty/bgfx/3rdparty/spirv-cross/reference/shaders/comp/struct-layout.comp new file mode 100644 index 00000000000..4feea8be54c --- /dev/null +++ b/3rdparty/bgfx/3rdparty/spirv-cross/reference/shaders/comp/struct-layout.comp @@ -0,0 +1,24 @@ +#version 310 es +layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in; + +struct Foo +{ + mat4 m; +}; + +layout(binding = 1, std430) writeonly buffer SSBO2 +{ + Foo out_data[]; +} _23; + +layout(binding = 0, std430) readonly buffer SSBO +{ + Foo in_data[]; +} _30; + +void main() +{ + uint ident = gl_GlobalInvocationID.x; + _23.out_data[ident].m = _30.in_data[ident].m * _30.in_data[ident].m; +} + |