summaryrefslogtreecommitdiffstats
path: root/wgpu/src/image.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector0193@gmail.com>2020-11-11 18:06:27 +0100
committerLibravatar GitHub <noreply@github.com>2020-11-11 18:06:27 +0100
commit73811c394a39c3816c67bffd2cf7d7a93c8803a9 (patch)
treebabd079fff2163d147d3d2cec429b17d04a1af9c /wgpu/src/image.rs
parent2f5a3dacd933a52931a1bb169138d52402413956 (diff)
parent0400f6716bfb7bcae7d7e464e79e400f3ccc2368 (diff)
downloadiced-73811c394a39c3816c67bffd2cf7d7a93c8803a9.tar.gz
iced-73811c394a39c3816c67bffd2cf7d7a93c8803a9.tar.bz2
iced-73811c394a39c3816c67bffd2cf7d7a93c8803a9.zip
Merge pull request #610 from hecrj/improvement/update-dependencies
Update dependencies
Diffstat (limited to 'wgpu/src/image.rs')
-rw-r--r--wgpu/src/image.rs27
1 files changed, 13 insertions, 14 deletions
diff --git a/wgpu/src/image.rs b/wgpu/src/image.rs
index 891dba1e..c256ca7e 100644
--- a/wgpu/src/image.rs
+++ b/wgpu/src/image.rs
@@ -13,7 +13,8 @@ use iced_graphics::layer;
use iced_native::Rectangle;
use std::cell::RefCell;
use std::mem;
-use zerocopy::AsBytes;
+
+use bytemuck::{Pod, Zeroable};
#[cfg(feature = "image")]
use iced_native::image;
@@ -219,14 +220,14 @@ impl Pipeline {
let vertices =
device.create_buffer_init(&wgpu::util::BufferInitDescriptor {
label: Some("iced_wgpu::image vertex buffer"),
- contents: QUAD_VERTS.as_bytes(),
+ contents: bytemuck::cast_slice(&QUAD_VERTS),
usage: wgpu::BufferUsage::VERTEX,
});
let indices =
device.create_buffer_init(&wgpu::util::BufferInitDescriptor {
label: Some("iced_wgpu::image index buffer"),
- contents: QUAD_INDICES.as_bytes(),
+ contents: bytemuck::cast_slice(&QUAD_INDICES),
usage: wgpu::BufferUsage::INDEX,
});
@@ -385,12 +386,9 @@ impl Pipeline {
device,
);
- uniforms_buffer.copy_from_slice(
- Uniforms {
- transform: transformation.into(),
- }
- .as_bytes(),
- );
+ uniforms_buffer.copy_from_slice(bytemuck::bytes_of(&Uniforms {
+ transform: transformation.into(),
+ }));
}
let mut i = 0;
@@ -411,8 +409,9 @@ impl Pipeline {
device,
);
- instances_buffer
- .copy_from_slice(instances[i..i + amount].as_bytes());
+ instances_buffer.copy_from_slice(bytemuck::cast_slice(
+ &instances[i..i + amount],
+ ));
let mut render_pass =
encoder.begin_render_pass(&wgpu::RenderPassDescriptor {
@@ -463,7 +462,7 @@ impl Pipeline {
}
#[repr(C)]
-#[derive(Clone, Copy, AsBytes)]
+#[derive(Clone, Copy, Zeroable, Pod)]
pub struct Vertex {
_position: [f32; 2],
}
@@ -486,7 +485,7 @@ const QUAD_VERTS: [Vertex; 4] = [
];
#[repr(C)]
-#[derive(Debug, Clone, Copy, AsBytes)]
+#[derive(Debug, Clone, Copy, Zeroable, Pod)]
struct Instance {
_position: [f32; 2],
_size: [f32; 2],
@@ -500,7 +499,7 @@ impl Instance {
}
#[repr(C)]
-#[derive(Debug, Clone, Copy, AsBytes)]
+#[derive(Debug, Clone, Copy, Zeroable, Pod)]
struct Uniforms {
transform: [f32; 16],
}