summaryrefslogtreecommitdiffstats
path: root/wgpu/src/image/raster.rs
diff options
context:
space:
mode:
authorLibravatar Malte Veerman <malte.veerman@gmail.com>2020-01-17 20:15:20 +0100
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2020-02-25 13:26:50 +0100
commitc0996923c6aab39bb61ca6d3310149c66a73fac8 (patch)
treec34f01b1b1aee5d2531810175a85313d0e30177e /wgpu/src/image/raster.rs
parent3f388351054c0961923b5f78e7dcf42289565a48 (diff)
downloadiced-c0996923c6aab39bb61ca6d3310149c66a73fac8.tar.gz
iced-c0996923c6aab39bb61ca6d3310149c66a73fac8.tar.bz2
iced-c0996923c6aab39bb61ca6d3310149c66a73fac8.zip
Batch image draw calls into one with multiple instances
Diffstat (limited to 'wgpu/src/image/raster.rs')
-rw-r--r--wgpu/src/image/raster.rs12
1 files changed, 2 insertions, 10 deletions
diff --git a/wgpu/src/image/raster.rs b/wgpu/src/image/raster.rs
index 387bd23a..bca2ebda 100644
--- a/wgpu/src/image/raster.rs
+++ b/wgpu/src/image/raster.rs
@@ -3,7 +3,6 @@ use iced_native::image;
use std::{
collections::{HashMap, HashSet},
};
-use guillotiere::Size;
use debug_stub_derive::*;
#[derive(DebugStub)]
@@ -72,17 +71,10 @@ impl Cache {
encoder: &mut wgpu::CommandEncoder,
atlas_array: &mut TextureArray,
) -> &Memory {
- let _ = self.load(handle);
-
- let memory = self.map.get_mut(&handle.id()).unwrap();
+ let memory = self.load(handle);
if let Memory::Host(image) = memory {
- let (width, height) = image.dimensions();
- let size = Size::new(width as i32, height as i32);
-
- let allocation = atlas_array.allocate(size);
-
- atlas_array.upload(image, &allocation, device, encoder);
+ let allocation = atlas_array.upload(image, device, encoder);
*memory = Memory::Device(allocation);
}