diff options
| author | 2021-04-11 18:55:57 -0700 | |
|---|---|---|
| committer | 2021-04-11 18:55:57 -0700 | |
| commit | 9a2c78c4059d2be37d10adda397fb6e64f38ac02 (patch) | |
| tree | f529faa116378e7ab447b40bd93bf5811c3dfca8 /wgpu/src/image.rs | |
| parent | 4b8ba8309f6645cdcb5bd605f8dd88097f8ee5a7 (diff) | |
| download | iced-9a2c78c4059d2be37d10adda397fb6e64f38ac02.tar.gz iced-9a2c78c4059d2be37d10adda397fb6e64f38ac02.tar.bz2 iced-9a2c78c4059d2be37d10adda397fb6e64f38ac02.zip | |
Upgrade wgpu
Diffstat (limited to 'wgpu/src/image.rs')
| -rw-r--r-- | wgpu/src/image.rs | 59 | 
1 files changed, 29 insertions, 30 deletions
| diff --git a/wgpu/src/image.rs b/wgpu/src/image.rs index 5511565e..713af209 100644 --- a/wgpu/src/image.rs +++ b/wgpu/src/image.rs @@ -134,28 +134,26 @@ impl Pipeline {                  bind_group_layouts: &[&constant_layout, &texture_layout],              }); -        let vs_module = device.create_shader_module(&wgpu::include_spirv!( -            "shader/image.vert.spv" -        )); - -        let fs_module = device.create_shader_module(&wgpu::include_spirv!( -            "shader/image.frag.spv" -        )); +        let shader = device.create_shader_module(&wgpu::ShaderModuleDescriptor { +            label: Some("iced_wgpu::image::shader"), +            source: wgpu::ShaderSource::Wgsl(std::borrow::Cow::Borrowed(include_str!("shader/image.wgsl"))), +            flags: wgpu::ShaderFlags::all() +        });          let pipeline =              device.create_render_pipeline(&wgpu::RenderPipelineDescriptor {                  label: Some("iced_wgpu::image pipeline"),                  layout: Some(&layout),                  vertex: wgpu::VertexState { -                    module: &vs_module, -                    entry_point: "main", +                    module: &shader, +                    entry_point: "vs_main",                      buffers: &[                          wgpu::VertexBufferLayout {                              array_stride: mem::size_of::<Vertex>() as u64,                              step_mode: wgpu::InputStepMode::Vertex,                              attributes: &[wgpu::VertexAttribute {                                  shader_location: 0, -                                format: wgpu::VertexFormat::Float2, +                                format: wgpu::VertexFormat::Float32x2,                                  offset: 0,                              }],                          }, @@ -165,27 +163,27 @@ impl Pipeline {                              attributes: &[                                  wgpu::VertexAttribute {                                      shader_location: 1, -                                    format: wgpu::VertexFormat::Float2, +                                    format: wgpu::VertexFormat::Float32x2,                                      offset: 0,                                  },                                  wgpu::VertexAttribute {                                      shader_location: 2, -                                    format: wgpu::VertexFormat::Float2, +                                    format: wgpu::VertexFormat::Float32x2,                                      offset: 4 * 2,                                  },                                  wgpu::VertexAttribute {                                      shader_location: 3, -                                    format: wgpu::VertexFormat::Float2, +                                    format: wgpu::VertexFormat::Float32x2,                                      offset: 4 * 4,                                  },                                  wgpu::VertexAttribute {                                      shader_location: 4, -                                    format: wgpu::VertexFormat::Float2, +                                    format: wgpu::VertexFormat::Float32x2,                                      offset: 4 * 6,                                  },                                  wgpu::VertexAttribute {                                      shader_location: 5, -                                    format: wgpu::VertexFormat::Uint, +                                    format: wgpu::VertexFormat::Uint32,                                      offset: 4 * 8,                                  },                              ], @@ -193,27 +191,28 @@ impl Pipeline {                      ],                  },                  fragment: Some(wgpu::FragmentState { -                    module: &fs_module, -                    entry_point: "main", +                    module: &shader, +                    entry_point: "fs_main",                      targets: &[wgpu::ColorTargetState {                          format, -                        color_blend: wgpu::BlendState { -                            src_factor: wgpu::BlendFactor::SrcAlpha, -                            dst_factor: wgpu::BlendFactor::OneMinusSrcAlpha, -                            operation: wgpu::BlendOperation::Add, -                        }, -                        alpha_blend: wgpu::BlendState { -                            src_factor: wgpu::BlendFactor::One, -                            dst_factor: wgpu::BlendFactor::OneMinusSrcAlpha, -                            operation: wgpu::BlendOperation::Add, -                        }, +                        blend: Some(wgpu::BlendState { +                            color: wgpu::BlendComponent { +                                src_factor: wgpu::BlendFactor::SrcAlpha, +                                dst_factor: wgpu::BlendFactor::OneMinusSrcAlpha, +                                operation: wgpu::BlendOperation::Add, +                            }, +                            alpha: wgpu::BlendComponent { +                                src_factor: wgpu::BlendFactor::One, +                                dst_factor: wgpu::BlendFactor::OneMinusSrcAlpha, +                                operation: wgpu::BlendOperation::Add, +                            }, +                        }),                          write_mask: wgpu::ColorWrite::ALL,                      }],                  }),                  primitive: wgpu::PrimitiveState {                      topology: wgpu::PrimitiveTopology::TriangleList,                      front_face: wgpu::FrontFace::Cw, -                    cull_mode: wgpu::CullMode::None,                      ..Default::default()                  },                  depth_stencil: None, @@ -424,8 +423,8 @@ impl Pipeline {                  encoder.begin_render_pass(&wgpu::RenderPassDescriptor {                      label: Some("iced_wgpu::image render pass"),                      color_attachments: &[ -                        wgpu::RenderPassColorAttachmentDescriptor { -                            attachment: target, +                        wgpu::RenderPassColorAttachment { +                            view: target,                              resolve_target: None,                              ops: wgpu::Operations {                                  load: wgpu::LoadOp::Load, | 
