diff options
Diffstat (limited to 'vgcodec/src/helper.rs')
-rw-r--r-- | vgcodec/src/helper.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/vgcodec/src/helper.rs b/vgcodec/src/helper.rs new file mode 100644 index 0000000..3aca81d --- /dev/null +++ b/vgcodec/src/helper.rs @@ -0,0 +1,20 @@ +use wgpu::{Queue, Texture, Extent3d}; + + +pub fn write_texture(queue: &Queue, target: &Texture, data: &[u8], size: Extent3d) { + queue.write_texture( + wgpu::ImageCopyTexture { + texture: &target, + mip_level: 0, + origin: wgpu::Origin3d::ZERO, + aspect: wgpu::TextureAspect::All, + }, + &data, + wgpu::ImageDataLayout { + offset: 0, + bytes_per_row: Some(std::num::NonZeroU32::try_from((size.width * 4) as u32).unwrap()), + rows_per_image: None, + }, + size, + ); +} |