[[block]] | |
struct Result { | |
values : array<f32>; | |
}; | |
let width : u32 = 128u; | |
[[group(0), binding(0)]] var tex : texture_depth_2d; | |
[[group(0), binding(1)]] var<storage, read_write> result : Result; | |
[[stage(compute), workgroup_size(1)]] | |
fn main([[builtin(global_invocation_id)]] GlobalInvocationId : vec3<u32>) { | |
result.values[((GlobalInvocationId.y * width) + GlobalInvocationId.x)] = textureLoad(tex, vec2<i32>(i32(GlobalInvocationId.x), i32(GlobalInvocationId.y)), 0); | |
} |