From 2f695ef9803c9c08f64961f1b9902a661a385160 Mon Sep 17 00:00:00 2001 From: Malte Veerman Date: Fri, 17 Jan 2020 20:48:49 +0100 Subject: [PATCH] Updated shaders and removed debug_stub_derive dependency --- wgpu/Cargo.toml | 1 - wgpu/src/image.rs | 32 ++++++++++++++++++++++++-------- wgpu/src/image/raster.rs | 13 +++++++++++-- wgpu/src/image/vector.rs | 24 ++++++++++++++++-------- wgpu/src/shader/image.frag.spv | Bin 684 -> 584 bytes wgpu/src/shader/image.vert.spv | Bin 2324 -> 1596 bytes 6 files changed, 51 insertions(+), 19 deletions(-) diff --git a/wgpu/Cargo.toml b/wgpu/Cargo.toml index f8b5bb8c..56839cf0 100644 --- a/wgpu/Cargo.toml +++ b/wgpu/Cargo.toml @@ -22,7 +22,6 @@ glam = "0.8" font-kit = "0.4" log = "0.4" guillotiere = "0.4" -debug_stub_derive = "0.3" [dependencies.image] version = "0.22" diff --git a/wgpu/src/image.rs b/wgpu/src/image.rs index 9443b876..2fd73b54 100644 --- a/wgpu/src/image.rs +++ b/wgpu/src/image.rs @@ -15,7 +15,6 @@ use std::mem; use std::cell::RefCell; use guillotiere::{Allocation, AtlasAllocator, Size}; -use debug_stub_derive::*; #[derive(Debug)] pub struct Pipeline { @@ -477,11 +476,9 @@ impl ImageAllocation { } } -#[derive(DebugStub)] pub enum ArrayAllocation { AtlasAllocation { layer: usize, - #[debug_stub = "Allocation"] allocation: Allocation, }, WholeLayer { @@ -518,16 +515,35 @@ impl ArrayAllocation { } } -#[derive(DebugStub)] +impl std::fmt::Debug for ArrayAllocation { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + match self { + ArrayAllocation::AtlasAllocation { layer, .. } => { + write!(f, "ArrayAllocation::AtlasAllocation {{ layer: {} }}", layer) + }, + ArrayAllocation::WholeLayer { layer } => { + write!(f, "ArrayAllocation::WholeLayer {{ layer: {} }}", layer) + } + } + } +} + pub enum TextureLayer { Whole, - Atlas( - #[debug_stub="AtlasAllocator"] - AtlasAllocator - ), + Atlas(AtlasAllocator), Empty, } +impl std::fmt::Debug for TextureLayer { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + match self { + TextureLayer::Whole => write!(f, "TextureLayer::Whole"), + TextureLayer::Atlas(_) => write!(f, "TextureLayer::Atlas"), + TextureLayer::Empty => write!(f, "TextureLayer::Empty"), + } + } +} + #[derive(Debug)] pub struct TextureArray { texture: wgpu::Texture, diff --git a/wgpu/src/image/raster.rs b/wgpu/src/image/raster.rs index bca2ebda..648df0ff 100644 --- a/wgpu/src/image/raster.rs +++ b/wgpu/src/image/raster.rs @@ -3,9 +3,7 @@ use iced_native::image; use std::{ collections::{HashMap, HashSet}, }; -use debug_stub_derive::*; -#[derive(DebugStub)] pub enum Memory { Host(::image::ImageBuffer<::image::Bgra, Vec>), Device(ImageAllocation), @@ -24,6 +22,17 @@ impl Memory { } } +impl std::fmt::Debug for Memory { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + match self { + Memory::Host(_) => write!(f, "Memory::Host"), + Memory::Device(_) => write!(f, "Memory::Device"), + Memory::NotFound => write!(f, "Memory::NotFound"), + Memory::Invalid => write!(f, "Memory::Invalid"), + } + } +} + #[derive(Debug)] pub struct Cache { map: HashMap, diff --git a/wgpu/src/image/vector.rs b/wgpu/src/image/vector.rs index 9bddcc2b..a8746566 100644 --- a/wgpu/src/image/vector.rs +++ b/wgpu/src/image/vector.rs @@ -3,14 +3,9 @@ use iced_native::svg; use std::{ collections::{HashMap, HashSet}, }; -use debug_stub_derive::*; -#[derive(DebugStub)] pub enum Svg { - Loaded( - #[debug_stub="ReplacementValue"] - resvg::usvg::Tree - ), + Loaded(resvg::usvg::Tree), NotFound, } @@ -27,10 +22,17 @@ impl Svg { } } -#[derive(DebugStub)] +impl std::fmt::Debug for Svg { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + match self { + Svg::Loaded(_) => write!(f, "Svg::Loaded"), + Svg::NotFound => write!(f, "Svg::NotFound"), + } + } +} + pub struct Cache { svgs: HashMap, - #[debug_stub="ReplacementValue"] rasterized: HashMap<(u64, u32, u32), ImageAllocation>, svg_hits: HashSet, rasterized_hits: HashSet<(u64, u32, u32)>, @@ -144,3 +146,9 @@ impl Cache { self.rasterized_hits.clear(); } } + +impl std::fmt::Debug for Cache { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + write!(f, "vector::Cache") + } +} \ No newline at end of file diff --git a/wgpu/src/shader/image.frag.spv b/wgpu/src/shader/image.frag.spv index ebee82ace6f4e41c6b3600a9789303ca71608f98..6a6445b4af2f66787c836fb8168207b4726ae58b 100644 GIT binary patch delta 34 qcmZ3(dV+E_-dk4b+ delta 132 zcmX@XvWAtLnMs+Qfq{{Moq=N_cWfdv12Y2?0|Ub$Mg|5}1{MYu1_p-Q#LPSf1_+;% zfq@}E-Z?)fzledAft7)Wfq|hkJ|wlGq_ij%tcI0A04x@qm|KvOS_BqjVGv_rU?__Z WEn}FNdYqAAvMysjBh%!$jH?0Zwic%V diff --git a/wgpu/src/shader/image.vert.spv b/wgpu/src/shader/image.vert.spv index da76eca03a162a12a8b45737ddd01512fe1ae6da..cceff73aee6192c1efa1dd515293cf6272282006 100644 GIT binary patch literal 1596 zcmZQ(Qf6mhU}WH6;AMznfB-=TCI&_Z1_o{hHZbk(6YQf`T#}+^Vrl?V!Nd5`5?U@KFC~OY$Y92@qgqfgxkX;}?$R8dItPE}-i@<(@ zFkoUJd2R+!2!PxMQ3o;uBnGkzrVhjgi9y`M3^os>&Vzx4!5d;E1IR5P^)S9NR2*51 zoq>Tt0PIF)us)C(ApiI>Ffb@V)x-FTP`)q&69Y({A_Frx*v$V6`A|YbYNS<{){HdM*YAuzrwPAoU=>fx-eL4pI-|gW?1v z2IGU`1ep(t6A&MyUj!P4AUA;2gZQ900?C8ylY-g@3O@-376xes1_qEAh!0W^vJVzt zq6{ny@=(8lf{y41{MZas9Qni$uY2j;~L~vkeMJk5C-|#9U8`%F!1T231pz<*F5m389?lNOw1?vTcCCGS? z{XZC(!0FMJfrSASr=VO4icc7yADTZ~8Cb#cpfm|m0}_X+5rXF5MyMKLXxasdgVcb+ zLkya~0~uJs=}DY{fdQlrvIP`ZFg5B73=AM~5Fg}s9cbADbB`_q0|Q75*^PQo zF^C%>>BRw>Cqd~1h6A8!$q|~CKz5?jR7PMVuR%Ji!)0y^Ya+k7}&w$ps)gqXXcdzXI6on1eXK(H9aTZIVZEgC9}9B zF)uk4E(Z!lkX&g_4qT3vff*c5AiF^Bb7f#)aL>t4O3W!{0J#Ii2g#M9_=}mr9V7@+ z%fP|_3PU+0J}3;4`Ji|K@j+ql&cFf=I}jh_9uOZCMj$@O?I1oVj6i&lKRp;&!F~oA z4>A`-!^A-HATbaP69bt65(AkH69ch9Vi5b8!RCR~c`&dr!2HL`z`y`f592F?EJ71w zho&!g24=86kQpHNg2F-xsvgEygz|+Mn84{z5u6ekz-%!FW(GC}1_lLiT4iAXnG52B z%u`@sVc-C#TL!SWHIxquV~{^U@>~p{9E6Yu@j?Crg#$=Ehz|;LWIiZgfcWAJEDXX7 z3}E{~;UU4m!XU!H02TxBLFS7xK+Fb-!^{K45lFu%0}F!$)a@WIYD4*wAP!iZg+U7H zK9HY4@*r9kDi7j=^vgrlfcPMJNO(8c>oBl`-J-(4zyQ(%!XP;i4RZ@9eSq8|!@$B| z5A_SkJUM8-f%y+42f`pfIYPq}l&?VMfcTK|fq?j&g6Nv8ub+a5azCqyu zGRutt5|5y?0x}E42c-d6{CPm-Vd{gRc7xny#=r_r1E8=584rrn9}G+kp!5ea3l#RC zas-qnY#AVF161OH;upr}V}O)(tqiQ-G{Voo04^0l;xILW(6rhJRU^c}zyMMQ61QVu z2IpCjm?Hx#IKHI8X_0{e6ptV?Kyf0&z`y_!4}iuAC{KdKKyd-XF#V9U%)kJO2bg|P z9sr5M^n>yUNFPWXM1wF$Ey%BG&@wxaffbxK)fpHVKw_XUf{AHB#XxZnGgFg+fdQlz zBnL7NlvZHswHO!}KyF4hLmMgvG6SYg2Py`NKbV*MFiXoc^ zs&$p0Y!g8T=QvteLh0Qn8%7m(XQ zZiUI&GB7ZJ+zE0Q$Q>YiL2{tHV#mP10J0NgHpmQ+T2NXA+>Gfh@U;v53_}&Z*;QDwH11q?E^I>3M0I30qgVcc1oG-N90E=Hg1_lO@7;^ae zL&ZSh2XZGU4+k(XFo4v8