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