struct VSIn { @builtin(instance_index) sk_InstanceID: u32, }; struct VSOut { @location(1) @interpolate(flat) id: i32, @builtin(position) sk_Position: vec4, }; fn main(_stageIn: VSIn, _stageOut: ptr) { (*_stageOut).id = i32(_stageIn.sk_InstanceID); } @vertex fn vertexMain(_stageIn: VSIn) -> VSOut { var _stageOut: VSOut; main(_stageIn, &_stageOut); return _stageOut; }