| struct ComputeInputs { |
| @builtin(local_invocation_id) |
| local_invocation_id : vec3<u32>; |
| @builtin(local_invocation_index) |
| local_invocation_index : u32; |
| @builtin(global_invocation_id) |
| global_invocation_id : vec3<u32>; |
| @builtin(workgroup_id) |
| workgroup_id : vec3<u32>; |
| @builtin(num_workgroups) |
| num_workgroups : vec3<u32>; |
| } |
| |
| @stage(compute) @workgroup_size(1) |
| fn main(inputs : ComputeInputs) { |
| let foo : u32 = ((((inputs.local_invocation_id.x + inputs.local_invocation_index) + inputs.global_invocation_id.x) + inputs.workgroup_id.x) + inputs.num_workgroups.x); |
| } |