generated from krampus/template-godot4
20 lines
486 B
Plaintext
20 lines
486 B
Plaintext
|
#[compute]
|
||
|
#version 450
|
||
|
|
||
|
layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in;
|
||
|
|
||
|
layout(set = 0, binding = 0, std430) restrict buffer outputBuffer {
|
||
|
uint sum_value;
|
||
|
} out_data;
|
||
|
|
||
|
|
||
|
layout(set = 0, binding = 1, r8ui) uniform readonly uimage2D inputTexture;
|
||
|
|
||
|
|
||
|
void main() {
|
||
|
ivec2 uv = ivec2(gl_GlobalInvocationID.xy);
|
||
|
uint value = imageLoad(inputTexture, uv).r + 1;
|
||
|
out_data.sum_value = atomicAdd(out_data.sum_value, value);
|
||
|
//out_data.sum_value += value;
|
||
|
}
|