struct Interface { @location(0) @interpolate(flat) i : i32, @location(1) @interpolate(flat) u : u32, @location(2) @interpolate(flat) vi : vec4, @location(3) @interpolate(flat) vu : vec4, @builtin(position) pos : vec4, }; @stage(vertex) fn vert_main() -> Interface { return Interface(); } @stage(fragment) fn frag_main(inputs : Interface) -> @location(0) i32 { return inputs.i; }