diff options
author | 2023-09-03 19:32:38 -0400 | |
---|---|---|
committer | 2023-09-03 19:32:38 -0400 | |
commit | 76cec1b1fd533dda37aa53c40ef7665ed3b406b6 (patch) | |
tree | cf837ba492ca5e47f05124086e2ce183cda274fc | |
parent | 9b9b37e6f83b5e5a8811feb17b484c6b11fa3b8b (diff) | |
download | iced-76cec1b1fd533dda37aa53c40ef7665ed3b406b6.tar.gz iced-76cec1b1fd533dda37aa53c40ef7665ed3b406b6.tar.bz2 iced-76cec1b1fd533dda37aa53c40ef7665ed3b406b6.zip |
use @interpolate(flat) attribute as per the WebGPU spec:
User-defined vertex outputs and fragment inputs of scalar or vector integer type must always be specified as @interpolate(flat)
https://www.w3.org/TR/WGSL/#interpolation
-rw-r--r-- | wgpu/src/shader/quad.wgsl | 22 | ||||
-rw-r--r-- | wgpu/src/shader/triangle.wgsl | 20 |
2 files changed, 21 insertions, 21 deletions
diff --git a/wgpu/src/shader/quad.wgsl b/wgpu/src/shader/quad.wgsl index fb402158..87055339 100644 --- a/wgpu/src/shader/quad.wgsl +++ b/wgpu/src/shader/quad.wgsl @@ -147,12 +147,12 @@ fn solid_fs_main( struct GradientVertexInput { @location(0) v_pos: vec2<f32>, - @location(1) colors_1: vec4<u32>, - @location(2) colors_2: vec4<u32>, - @location(3) colors_3: vec4<u32>, - @location(4) colors_4: vec4<u32>, - @location(5) offsets: vec4<u32>, - @location(6) direction: vec4<f32>, + @location(1) @interpolate(flat) colors_1: vec4<u32>, + @location(2) @interpolate(flat) colors_2: vec4<u32>, + @location(3) @interpolate(flat) colors_3: vec4<u32>, + @location(4) @interpolate(flat) colors_4: vec4<u32>, + @location(5) @interpolate(flat) offsets: vec4<u32>, + @location(6) @interpolate(flat) direction: vec4<f32>, @location(7) position_and_scale: vec4<f32>, @location(8) border_color: vec4<f32>, @location(9) border_radius: vec4<f32>, @@ -161,11 +161,11 @@ struct GradientVertexInput { struct GradientVertexOutput { @builtin(position) position: vec4<f32>, - @location(1) colors_1: vec4<u32>, - @location(2) colors_2: vec4<u32>, - @location(3) colors_3: vec4<u32>, - @location(4) colors_4: vec4<u32>, - @location(5) offsets: vec4<u32>, + @location(1) @interpolate(flat) colors_1: vec4<u32>, + @location(2) @interpolate(flat) colors_2: vec4<u32>, + @location(3) @interpolate(flat) colors_3: vec4<u32>, + @location(4) @interpolate(flat) colors_4: vec4<u32>, + @location(5) @interpolate(flat) offsets: vec4<u32>, @location(6) direction: vec4<f32>, @location(7) position_and_scale: vec4<f32>, @location(8) border_color: vec4<f32>, diff --git a/wgpu/src/shader/triangle.wgsl b/wgpu/src/shader/triangle.wgsl index 9f512d14..3a2b9845 100644 --- a/wgpu/src/shader/triangle.wgsl +++ b/wgpu/src/shader/triangle.wgsl @@ -38,22 +38,22 @@ fn solid_fs_main(input: SolidVertexOutput) -> @location(0) vec4<f32> { struct GradientVertexInput { @location(0) v_pos: vec2<f32>, - @location(1) colors_1: vec4<u32>, - @location(2) colors_2: vec4<u32>, - @location(3) colors_3: vec4<u32>, - @location(4) colors_4: vec4<u32>, - @location(5) offsets: vec4<u32>, + @location(1) @interpolate(flat) colors_1: vec4<u32>, + @location(2) @interpolate(flat) colors_2: vec4<u32>, + @location(3) @interpolate(flat) colors_3: vec4<u32>, + @location(4) @interpolate(flat) colors_4: vec4<u32>, + @location(5) @interpolate(flat) offsets: vec4<u32>, @location(6) direction: vec4<f32>, } struct GradientVertexOutput { @builtin(position) position: vec4<f32>, @location(0) raw_position: vec2<f32>, - @location(1) colors_1: vec4<u32>, - @location(2) colors_2: vec4<u32>, - @location(3) colors_3: vec4<u32>, - @location(4) colors_4: vec4<u32>, - @location(5) offsets: vec4<u32>, + @location(1) @interpolate(flat) colors_1: vec4<u32>, + @location(2) @interpolate(flat) colors_2: vec4<u32>, + @location(3) @interpolate(flat) colors_3: vec4<u32>, + @location(4) @interpolate(flat) colors_4: vec4<u32>, + @location(5) @interpolate(flat) offsets: vec4<u32>, @location(6) direction: vec4<f32>, } |