1*c8dee2aaSAndroid Build Coastguard Worker 2*c8dee2aaSAndroid Build Coastguard Workerout vec4 sk_FragColor; 3*c8dee2aaSAndroid Build Coastguard Workerstruct SomeData { 4*c8dee2aaSAndroid Build Coastguard Worker vec4 a; 5*c8dee2aaSAndroid Build Coastguard Worker vec2 b; 6*c8dee2aaSAndroid Build Coastguard Worker}; 7*c8dee2aaSAndroid Build Coastguard Workerlayout (binding = 0, set = 0) readonly buffer storageBuffer { 8*c8dee2aaSAndroid Build Coastguard Worker uint offset; 9*c8dee2aaSAndroid Build Coastguard Worker SomeData[] inputData; 10*c8dee2aaSAndroid Build Coastguard Worker}; 11*c8dee2aaSAndroid Build Coastguard Workerlayout (binding = 1, set = 0) buffer outputBuffer { 12*c8dee2aaSAndroid Build Coastguard Worker SomeData[] outputData; 13*c8dee2aaSAndroid Build Coastguard Worker}; 14*c8dee2aaSAndroid Build Coastguard Workerlayout (location = 2) flat in int bufferIndex; 15*c8dee2aaSAndroid Build Coastguard Workervec4 main() { 16*c8dee2aaSAndroid Build Coastguard Worker outputData[offset] = inputData[offset]; 17*c8dee2aaSAndroid Build Coastguard Worker return inputData[bufferIndex].a * inputData[bufferIndex].b.x; 18*c8dee2aaSAndroid Build Coastguard Worker} 19