struct FSIn { @builtin(front_facing) sk_Clockwise: bool, }; struct FSOut { @location(0) sk_FragColor: vec4, }; struct _GlobalUniforms { f: mat2x2, h: mat2x2, }; @binding(0) @group(0) var _globalUniforms: _GlobalUniforms; fn vec4f32_from_mat2x2f32(x: mat2x2) -> vec4 { return vec4(x[0].xy, x[1].xy); } fn main(_stageOut: ptr) { (*_stageOut).sk_FragColor = (vec4f32_from_mat2x2f32(_globalUniforms.h) + vec4(vec4f32_from_mat2x2f32(_globalUniforms.f))) + vec4(vec4(vec4f32_from_mat2x2f32(_globalUniforms.h)) + vec4f32_from_mat2x2f32(_globalUniforms.f)); } @fragment fn fragmentMain(_stageIn: FSIn) -> FSOut { var _stageOut: FSOut; main(&_stageOut); return _stageOut; }