struct UBO { data : array, 4>; dynamic_idx : i32; } @group(0) @binding(0) var ubo : UBO; struct Result { out : i32; } @group(0) @binding(2) var result : Result; @stage(compute) @workgroup_size(1) fn f() { result.out = ubo.data[ubo.dynamic_idx].x; }