blob: 876bdf741c90d6fc12cf1eb33264e0cde61fead9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
#version 310 es
layout (local_size_x = 8, local_size_y = 8) in;
layout (binding = 0) readonly buffer InBuf {
uvec4 data[];
} in_buf;
layout (binding = 1) writeonly buffer OutBuf {
uvec4 data[];
} out_buf;
layout (push_constant) uniform PushConsts {
uint in_img_width;
uint in_x_offset;
uint out_img_width;
uint out_x_offset;
uint copy_width;
} prop;
void main ()
{
uvec2 g_id = gl_GlobalInvocationID.xy;
g_id.x = min (g_id.x, prop.copy_width - 1u);
out_buf.data[g_id.y * prop.out_img_width + prop.out_x_offset + g_id.x] =
in_buf.data[g_id.y * prop.in_img_width + prop.in_x_offset + g_id.x];
}
|