yum-mirror/glslang
git clone https://git.yummers.dev/yum-mirror/glslang
799ea066
main
1#version 460 2#extension GL_EXT_descriptor_heap : require 3#extension GL_EXT_structured_descriptor_heap : require 4#extension GL_EXT_buffer_reference : require 5#extension GL_EXT_buffer_reference2 : require 6 7layout(local_size_x = 1) in; 8 9layout(buffer_reference) buffer ForwardRefType; 10 11layout(buffer_reference, std430, buffer_reference_align = 16) buffer VertexBuffer { 12 vec4 positions[]; 13}; 14 15layout(heap_offset = 256) resourceheap RefHeap { 16 VertexBuffer vertexBuffer; 17 layout(buffer_reference, std430) buffer { 18 uint data; 19 } inlineRef; 20 ForwardRefType forwardRef; 21 layout(buffer_reference, std430, buffer_reference_align = 4) buffer { 22 uint data; 23 } inlineRef2; 24} refHeap; 25 26layout(buffer_reference, std430) buffer ForwardRefType { 27 float value; 28 uint count; 29}; 30 31layout(binding = 0, std430) buffer Output { 32 vec4 position; 33 uint count; 34 uint inlineData; 35 uint inlineData2; 36} outputBuffer; 37 38void main() 39{ 40 outputBuffer.position = refHeap.vertexBuffer.positions[0]; 41 outputBuffer.count = refHeap.forwardRef.count + uint(refHeap.forwardRef.value); 42 outputBuffer.inlineData = refHeap.inlineRef.data; 43 outputBuffer.inlineData2 = refHeap.inlineRef2.data; 44}