| 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; |
| } |