struct PushConstants {
uint8_t *data;
Atomic<uint> *counter;
}
[[vk::push_constant]] PushConstants pc;
[shader("compute")]
[numthreads(1)]
void main(uint id: SV_DispatchThreadID) {
pc.data[pc.counter.increment()] = (uint8_t)id;
}
[ 7, 19, 1, 8, 13, 20, 30, 2, 24, 14, 31, 25, 5, 17, 6, 11, 22, 18, 28, 10, 21, 0, 4, 9, 12, 16, 3, 29, 27, 15, 23, 26]
[ 7, 19, 1, 13, 30, 8, 24, 20, 2, 14, 31, 25, 5, 17, 6, 11, 18, 28, 22, 21, 0, 10, 9, 12, 4, 3, 29, 16, 15, 23, 27, 26]
[ 8, 7, 20, 19, 2, 1, 14, 13, 31, 30, 25, 24, 5, 17, 22, 6, 21, 11, 10, 18, 9, 28, 4, 0, 3, 16, 12, 15, 27, 29, 26, 23]
[ 7, 8, 19, 20, 1, 2, 13, 14, 30, 31, 24, 25, 5, 22, 17, 10, 11, 21, 6, 4, 28, 9, 18, 16, 3, 0, 27, 15, 12, 26, 29, 23]
[ 7, 19, 1, 8, 13, 20, 30, 2, 24, 14, 31, 25, 5, 17, 6, 11, 18, 22, 28, 21, 0, 10, 9, 12, 4, 3, 29, 16, 15, 23, 27, 26]
[ 7, 19, 1, 8, 13, 20, 30, 2, 24, 14, 31, 25, 5, 17, 11, 6, 22, 28, 18, 10, 0, 21, 4, 12, 9, 16, 29, 3, 27, 23, 15, 26]
[ 7, 8, 19, 20, 1, 2, 13, 14, 30, 31, 24, 25, 5, 17, 22, 11, 21, 6, 10, 28, 9, 18, 4, 3, 0, 16, 15, 12, 27, 26, 29, 23]
[ 7, 19, 8, 1, 20, 13, 2, 30, 14, 24, 31, 25, 5, 22, 17, 21, 6, 10, 11, 9, 18, 4, 28, 3, 0, 16, 15, 12, 27, 26, 29, 23]
[ 7, 8, 19, 20, 1, 2, 13, 14, 30, 31, 24, 25, 5, 22, 17, 6, 21, 10, 11, 18, 9, 4, 28, 0, 3, 16, 12, 15, 27, 29, 26, 23]
[ 7, 19, 8, 1, 20, 13, 2, 30, 14, 24, 31, 25, 22, 5, 10, 21, 6, 17, 4, 9, 18, 11, 16, 3, 0, 28, 27, 15, 12, 26, 29, 23]
Hmm interdesting...