From f84e71d051da464e1a3f0a37f6b84a53d9910dc6 Mon Sep 17 00:00:00 2001 From: Carter Anderson Date: Sat, 22 Feb 2020 15:02:01 -0800 Subject: [PATCH] cargo fmt --- examples/entity_builder_comparison.rs | 5 +- examples/serializing.rs | 5 +- examples/spawner.rs | 6 +- src/core/bytes.rs | 2 +- src/core/mod.rs | 4 +- src/ecs/world_builder.rs | 8 +- src/prelude.rs | 4 +- src/render/color.rs | 3 +- src/render/mod.rs | 4 +- src/render/render_graph/draw_target.rs | 5 +- .../assigned_meshes_draw_target.rs | 4 +- .../draw_targets/meshes_draw_target.rs | 12 +- src/render/render_graph/draw_targets/mod.rs | 4 +- .../draw_targets/ui_draw_target.rs | 10 +- src/render/render_graph/pipeline.rs | 68 ++++++----- .../pipelines/forward_flat/mod.rs | 7 +- src/render/render_graph/pipelines/ui/mod.rs | 6 +- src/render/render_graph/renderable.rs | 109 ++++++++++++++---- src/render/render_graph/renderer.rs | 3 +- src/render/render_graph/resource.rs | 2 +- src/render/render_graph/resource_name.rs | 2 +- src/render/render_graph/uniform.rs | 8 +- src/render/shader_reflect.rs | 14 ++- 23 files changed, 190 insertions(+), 105 deletions(-) diff --git a/examples/entity_builder_comparison.rs b/examples/entity_builder_comparison.rs index 7f957c2bda..8226eafafe 100644 --- a/examples/entity_builder_comparison.rs +++ b/examples/entity_builder_comparison.rs @@ -1,10 +1,7 @@ use bevy::prelude::*; fn main() { - AppBuilder::new() - .add_defaults() - .setup_world(setup) - .run(); + AppBuilder::new().add_defaults().setup_world(setup).run(); } #[allow(dead_code)] diff --git a/examples/serializing.rs b/examples/serializing.rs index b6cbf6274c..3f1af2febb 100644 --- a/examples/serializing.rs +++ b/examples/serializing.rs @@ -2,10 +2,7 @@ use bevy::{prelude::*, serialization::*}; use serde::{Deserialize, Serialize}; use type_uuid::TypeUuid; fn main() { - let app = AppBuilder::new() - .add_defaults() - .setup_world(setup) - .build(); + let app = AppBuilder::new().add_defaults().setup_world(setup).build(); let comp_registrations = [ComponentRegistration::of::()]; diff --git a/examples/spawner.rs b/examples/spawner.rs index 3d6b14886a..7f5f1aa7c7 100644 --- a/examples/spawner.rs +++ b/examples/spawner.rs @@ -25,7 +25,8 @@ fn build_move_system() -> Box { -time.delta_seconds, time.delta_seconds, 0.0, - )).into(); + )) + .into(); } } }) @@ -127,7 +128,8 @@ fn setup(world: &mut World) { rng.gen_range(0.0, 1.0), rng.gen_range(0.0, 1.0), 1.0, - ).into(), + ) + .into(), }, translation: Translation::new( rng.gen_range(-50.0, 50.0), diff --git a/src/core/bytes.rs b/src/core/bytes.rs index 7a3654f0af..784f6765aa 100644 --- a/src/core/bytes.rs +++ b/src/core/bytes.rs @@ -1,5 +1,5 @@ use crate::{ - asset::{Texture, Handle}, + asset::{Handle, Texture}, math::Vec4, }; use zerocopy::AsBytes; diff --git a/src/core/mod.rs b/src/core/mod.rs index 0c106616fb..608d6378f0 100644 --- a/src/core/mod.rs +++ b/src/core/mod.rs @@ -1,5 +1,5 @@ -pub mod time; pub mod bytes; +pub mod time; -pub use time::Time; pub use bytes::GetBytes; +pub use time::Time; diff --git a/src/ecs/world_builder.rs b/src/ecs/world_builder.rs index 8cbfc6df31..dc0f534bba 100644 --- a/src/ecs/world_builder.rs +++ b/src/ecs/world_builder.rs @@ -1,5 +1,9 @@ use crate::ecs::EntityArchetype; -use legion::{world::{TagSet, TagLayout, IntoComponentSource}, prelude::*, filter::{Filter, ChunksetFilterData}}; +use legion::{ + filter::{ChunksetFilterData, Filter}, + prelude::*, + world::{IntoComponentSource, TagLayout, TagSet}, +}; pub trait WorldBuilderSource { fn build(&mut self) -> WorldBuilder; @@ -48,7 +52,7 @@ impl<'a> WorldBuilder<'a> { self } - pub fn add_entities(self, tags: T, components: C) -> Self + pub fn add_entities(self, tags: T, components: C) -> Self where T: TagSet + TagLayout + for<'b> Filter>, C: IntoComponentSource, diff --git a/src/prelude.rs b/src/prelude.rs index a973ee98e4..e2e44f2efb 100644 --- a/src/prelude.rs +++ b/src/prelude.rs @@ -5,8 +5,8 @@ pub use crate::{ ecs, ecs::{default_archetypes::*, EntityArchetype, WorldBuilder, WorldBuilderSource}, render::{ - ActiveCamera, ActiveCamera2d, Camera, CameraType, Instanced, Light, - render_graph::{StandardMaterial, Renderable, ShaderDefSuffixProvider}, ColorSource + render_graph::{Renderable, ShaderDefSuffixProvider, StandardMaterial}, + ActiveCamera, ActiveCamera2d, Camera, CameraType, ColorSource, Instanced, Light, }, ui::{Anchors, Margins, Node}, }; diff --git a/src/render/color.rs b/src/render/color.rs index 4d7986ae56..4a8d5c2ef0 100644 --- a/src/render/color.rs +++ b/src/render/color.rs @@ -1,7 +1,8 @@ use crate::{ asset::{Handle, Texture}, + core::GetBytes, math::Vec4, - render::render_graph::ShaderDefSuffixProvider, core::GetBytes, + render::render_graph::ShaderDefSuffixProvider, }; pub enum ColorSource { diff --git a/src/render/mod.rs b/src/render/mod.rs index 7d0e1b398f..4c45a61dc6 100644 --- a/src/render/mod.rs +++ b/src/render/mod.rs @@ -8,10 +8,10 @@ mod light; mod vertex; pub use camera::*; +pub use color::*; pub use light::*; pub use shader::*; -pub use color::*; pub use vertex::Vertex; -pub struct Instanced; \ No newline at end of file +pub struct Instanced; diff --git a/src/render/render_graph/draw_target.rs b/src/render/render_graph/draw_target.rs index 312120477c..52273e8e61 100644 --- a/src/render/render_graph/draw_target.rs +++ b/src/render/render_graph/draw_target.rs @@ -1,4 +1,7 @@ -use crate::{asset::Handle, render::render_graph::{pipeline::PipelineDescriptor, RenderPass}}; +use crate::{ + asset::Handle, + render::render_graph::{pipeline::PipelineDescriptor, RenderPass}, +}; use legion::prelude::World; // A set of draw calls. ex: get + draw meshes, get + draw instanced meshes, draw ui meshes, etc diff --git a/src/render/render_graph/draw_targets/assigned_meshes_draw_target.rs b/src/render/render_graph/draw_targets/assigned_meshes_draw_target.rs index f36ab03d9b..55452c844a 100644 --- a/src/render/render_graph/draw_targets/assigned_meshes_draw_target.rs +++ b/src/render/render_graph/draw_targets/assigned_meshes_draw_target.rs @@ -1,8 +1,8 @@ use crate::{ asset::{AssetStorage, Handle, Mesh}, legion::prelude::*, - render::{ - render_graph::{resource_name, RenderPass, Renderable, PipelineDescriptor, ShaderPipelineAssignments}, + render::render_graph::{ + resource_name, PipelineDescriptor, RenderPass, Renderable, ShaderPipelineAssignments, }, }; diff --git a/src/render/render_graph/draw_targets/meshes_draw_target.rs b/src/render/render_graph/draw_targets/meshes_draw_target.rs index 9e53c5c7ce..808b8977cd 100644 --- a/src/render/render_graph/draw_targets/meshes_draw_target.rs +++ b/src/render/render_graph/draw_targets/meshes_draw_target.rs @@ -2,19 +2,23 @@ use crate::{ asset::{AssetStorage, Handle, Mesh}, legion::prelude::*, render::{ - render_graph::{resource_name, RenderPass, Renderable, PipelineDescriptor}, + render_graph::{resource_name, PipelineDescriptor, RenderPass, Renderable}, Instanced, }, }; use zerocopy::AsBytes; -pub fn meshes_draw_target(world: &World, render_pass: &mut dyn RenderPass, _pipeline_handle: Handle) { +pub fn meshes_draw_target( + world: &World, + render_pass: &mut dyn RenderPass, + _pipeline_handle: Handle, +) { let mesh_storage = world.resources.get_mut::>().unwrap(); let mut current_mesh_id = None; let mut current_mesh_index_length = 0; - let mesh_query = <(Read>, Read)>::query() - .filter(!component::()); + let mesh_query = + <(Read>, Read)>::query().filter(!component::()); for (entity, (mesh, renderable)) in mesh_query.iter_entities(world) { if !renderable.is_visible { continue; diff --git a/src/render/render_graph/draw_targets/mod.rs b/src/render/render_graph/draw_targets/mod.rs index a301c20d57..d29d08b1dd 100644 --- a/src/render/render_graph/draw_targets/mod.rs +++ b/src/render/render_graph/draw_targets/mod.rs @@ -1,7 +1,7 @@ -mod meshes_draw_target; mod assigned_meshes_draw_target; +mod meshes_draw_target; mod ui_draw_target; -pub use meshes_draw_target::*; pub use assigned_meshes_draw_target::*; +pub use meshes_draw_target::*; pub use ui_draw_target::*; diff --git a/src/render/render_graph/draw_targets/ui_draw_target.rs b/src/render/render_graph/draw_targets/ui_draw_target.rs index 98f475bee1..851bb32840 100644 --- a/src/render/render_graph/draw_targets/ui_draw_target.rs +++ b/src/render/render_graph/draw_targets/ui_draw_target.rs @@ -1,12 +1,16 @@ use crate::{ - asset::{AssetStorage, Mesh, Handle}, + asset::{AssetStorage, Handle, Mesh}, legion::prelude::*, - render::render_graph::{resource_name, RenderPass, ResourceInfo, PipelineDescriptor}, + render::render_graph::{resource_name, PipelineDescriptor, RenderPass, ResourceInfo}, }; use zerocopy::AsBytes; -pub fn ui_draw_target(world: &World, render_pass: &mut dyn RenderPass, _pipeline_handle: Handle) { +pub fn ui_draw_target( + world: &World, + render_pass: &mut dyn RenderPass, + _pipeline_handle: Handle, +) { let mesh_storage = world.resources.get_mut::>().unwrap(); // NOTE: this is ugly and borrowing is stupid let result = { diff --git a/src/render/render_graph/pipeline.rs b/src/render/render_graph/pipeline.rs index 0fb0dc3f4a..113e1cbc81 100644 --- a/src/render/render_graph/pipeline.rs +++ b/src/render/render_graph/pipeline.rs @@ -1,7 +1,11 @@ -use crate::{asset::{AssetStorage, Handle}, render::{ - render_graph::{BindGroup, PipelineLayout, resource_name}, - shader::{Shader, ShaderStages}, Vertex, -}}; +use crate::{ + asset::{AssetStorage, Handle}, + render::{ + render_graph::{resource_name, BindGroup, PipelineLayout}, + shader::{Shader, ShaderStages}, + Vertex, + }, +}; #[derive(Clone, Debug)] pub struct VertexBufferDescriptor { @@ -87,22 +91,25 @@ impl PipelineDescriptor { } pub fn get_layout(&self) -> Option<&PipelineLayout> { - match self.layout { - PipelineLayoutType::Reflected(ref layout) => layout.as_ref(), - PipelineLayoutType::Manual(ref layout) => Some(layout), - } + match self.layout { + PipelineLayoutType::Reflected(ref layout) => layout.as_ref(), + PipelineLayoutType::Manual(ref layout) => Some(layout), + } } pub fn get_layout_mut(&mut self) -> Option<&mut PipelineLayout> { - match self.layout { - PipelineLayoutType::Reflected(ref mut layout) => layout.as_mut(), - PipelineLayoutType::Manual(ref mut layout) => Some(layout), - } + match self.layout { + PipelineLayoutType::Reflected(ref mut layout) => layout.as_mut(), + PipelineLayoutType::Manual(ref mut layout) => Some(layout), + } } } impl PipelineDescriptor { - pub fn build(shader_storage: &mut AssetStorage, vertex_shader: Shader) -> PipelineBuilder { + pub fn build( + shader_storage: &mut AssetStorage, + vertex_shader: Shader, + ) -> PipelineBuilder { PipelineBuilder::new(shader_storage, vertex_shader) } } @@ -208,23 +215,22 @@ impl<'a> PipelineBuilder<'a> { } pub fn with_standard_config(self) -> Self { - self - .with_depth_stencil_state(wgpu::DepthStencilStateDescriptor { - format: wgpu::TextureFormat::Depth32Float, - depth_write_enabled: true, - depth_compare: wgpu::CompareFunction::Less, - stencil_front: wgpu::StencilStateFaceDescriptor::IGNORE, - stencil_back: wgpu::StencilStateFaceDescriptor::IGNORE, - stencil_read_mask: 0, - stencil_write_mask: 0, - }) - .add_color_state(wgpu::ColorStateDescriptor { - format: wgpu::TextureFormat::Bgra8UnormSrgb, - color_blend: wgpu::BlendDescriptor::REPLACE, - alpha_blend: wgpu::BlendDescriptor::REPLACE, - write_mask: wgpu::ColorWrite::ALL, - }) - .add_vertex_buffer_descriptor(Vertex::get_vertex_buffer_descriptor()) - .add_draw_target(resource_name::draw_target::ASSIGNED_MESHES) + self.with_depth_stencil_state(wgpu::DepthStencilStateDescriptor { + format: wgpu::TextureFormat::Depth32Float, + depth_write_enabled: true, + depth_compare: wgpu::CompareFunction::Less, + stencil_front: wgpu::StencilStateFaceDescriptor::IGNORE, + stencil_back: wgpu::StencilStateFaceDescriptor::IGNORE, + stencil_read_mask: 0, + stencil_write_mask: 0, + }) + .add_color_state(wgpu::ColorStateDescriptor { + format: wgpu::TextureFormat::Bgra8UnormSrgb, + color_blend: wgpu::BlendDescriptor::REPLACE, + alpha_blend: wgpu::BlendDescriptor::REPLACE, + write_mask: wgpu::ColorWrite::ALL, + }) + .add_vertex_buffer_descriptor(Vertex::get_vertex_buffer_descriptor()) + .add_draw_target(resource_name::draw_target::ASSIGNED_MESHES) } } diff --git a/src/render/render_graph/pipelines/forward_flat/mod.rs b/src/render/render_graph/pipelines/forward_flat/mod.rs index bdc3ed0ea1..ef7f10d2af 100644 --- a/src/render/render_graph/pipelines/forward_flat/mod.rs +++ b/src/render/render_graph/pipelines/forward_flat/mod.rs @@ -1,10 +1,7 @@ use crate::{ asset::AssetStorage, render::{ - render_graph::{ - resource_name, PipelineDescriptor, - RenderGraphBuilder, - }, + render_graph::{resource_name, PipelineDescriptor, RenderGraphBuilder}, shader::{Shader, ShaderStage}, Vertex, }, @@ -32,7 +29,7 @@ impl ForwardFlatPipelineBuilder for RenderGraphBuilder { ) .with_fragment_shader(Shader::from_glsl( ShaderStage::Fragment, - include_str!("forward_flat.frag") + include_str!("forward_flat.frag"), )) .with_rasterization_state(wgpu::RasterizationStateDescriptor { front_face: wgpu::FrontFace::Ccw, diff --git a/src/render/render_graph/pipelines/ui/mod.rs b/src/render/render_graph/pipelines/ui/mod.rs index 7cd4966a99..accf4ef265 100644 --- a/src/render/render_graph/pipelines/ui/mod.rs +++ b/src/render/render_graph/pipelines/ui/mod.rs @@ -2,8 +2,8 @@ use crate::{ asset::AssetStorage, render::{ render_graph::{ - resource_providers::RectData, - PipelineDescriptor, RenderGraphBuilder, VertexBufferDescriptor, resource_name, + resource_name, resource_providers::RectData, PipelineDescriptor, RenderGraphBuilder, + VertexBufferDescriptor, }, shader::{Shader, ShaderStage}, Vertex, @@ -31,7 +31,7 @@ impl UiPipelineBuilder for RenderGraphBuilder { ) .with_fragment_shader(Shader::from_glsl( ShaderStage::Fragment, - include_str!("ui.frag") + include_str!("ui.frag"), )) .with_rasterization_state(wgpu::RasterizationStateDescriptor { front_face: wgpu::FrontFace::Ccw, diff --git a/src/render/render_graph/renderable.rs b/src/render/render_graph/renderable.rs index 474591dfb1..29d74011c5 100644 --- a/src/render/render_graph/renderable.rs +++ b/src/render/render_graph/renderable.rs @@ -1,10 +1,13 @@ +use super::PipelineDescriptor; use crate::{ asset::{AssetStorage, Handle}, - render::{render_graph::{RenderGraph, resource_name}, Shader, ShaderSource}, + render::{ + render_graph::{resource_name, RenderGraph}, + Shader, ShaderSource, + }, }; use legion::prelude::*; use std::collections::{HashMap, HashSet}; -use super::PipelineDescriptor; pub struct Renderable { pub is_visible: bool, @@ -27,7 +30,8 @@ impl Default for Renderable { pub struct CompiledShaderMap { // TODO: need macro hash lookup pub source_to_compiled: HashMap, Vec<(HashSet, Handle)>>, - pub pipeline_to_macro_pipelines: HashMap, Vec<(HashSet, Handle)>>, + pub pipeline_to_macro_pipelines: + HashMap, Vec<(HashSet, Handle)>>, } impl CompiledShaderMap { @@ -51,14 +55,22 @@ impl ShaderPipelineAssignments { } } -fn try_compiling_shader_with_macros(compiled_shader_map: &mut CompiledShaderMap, shader_storage: &mut AssetStorage, renderable: &Renderable, shader_handle: &Handle) -> Option> { +fn try_compiling_shader_with_macros( + compiled_shader_map: &mut CompiledShaderMap, + shader_storage: &mut AssetStorage, + renderable: &Renderable, + shader_handle: &Handle, +) -> Option> { if let None = compiled_shader_map.source_to_compiled.get(shader_handle) { compiled_shader_map .source_to_compiled .insert(shader_handle.clone(), Vec::new()); } - let compiled_shaders = compiled_shader_map.source_to_compiled.get_mut(shader_handle).unwrap(); + let compiled_shaders = compiled_shader_map + .source_to_compiled + .get_mut(shader_handle) + .unwrap(); let shader = shader_storage.get(shader_handle).unwrap(); // don't produce new shader if the input source is already spriv @@ -66,44 +78,84 @@ fn try_compiling_shader_with_macros(compiled_shader_map: &mut CompiledShaderMap, return None; } - if let Some((_shader_defs, compiled_shader)) = compiled_shaders.iter().find(|(shader_defs, _shader)| *shader_defs == renderable.shader_defs) { + if let Some((_shader_defs, compiled_shader)) = compiled_shaders + .iter() + .find(|(shader_defs, _shader)| *shader_defs == renderable.shader_defs) + { Some(compiled_shader.clone()) } else { - let shader_def_vec = renderable.shader_defs.iter().cloned().collect::>(); + let shader_def_vec = renderable + .shader_defs + .iter() + .cloned() + .collect::>(); let compiled_shader = shader.get_spirv_shader(Some(&shader_def_vec)); compiled_shaders.push((renderable.shader_defs.clone(), shader_handle.clone())); let compiled_shader_handle = shader_storage.add(compiled_shader); Some(compiled_shader_handle) } - } pub fn update_shader_assignments(world: &mut World, render_graph: &mut RenderGraph) { // PERF: this seems like a lot of work for things that don't change that often. // lots of string + hashset allocations. sees uniform_resource_provider for more context { - let mut shader_pipeline_assignments = world.resources.get_mut::().unwrap(); + let mut shader_pipeline_assignments = world + .resources + .get_mut::() + .unwrap(); let mut compiled_shader_map = world.resources.get_mut::().unwrap(); let mut shader_storage = world.resources.get_mut::>().unwrap(); - let mut pipeline_descriptor_storage = world.resources.get_mut::>().unwrap(); + let mut pipeline_descriptor_storage = world + .resources + .get_mut::>() + .unwrap(); // reset assignments so they are updated every frame shader_pipeline_assignments.assignments = HashMap::new(); for (entity, renderable) in >::query().iter_entities(world) { for pipeline_handle in renderable.pipelines.iter() { - if let None = compiled_shader_map.pipeline_to_macro_pipelines.get(pipeline_handle) { + if let None = compiled_shader_map + .pipeline_to_macro_pipelines + .get(pipeline_handle) + { compiled_shader_map .pipeline_to_macro_pipelines .insert(pipeline_handle.clone(), Vec::new()); } - let final_handle = if let Some((_shader_defs, macroed_pipeline_handle)) = compiled_shader_map.pipeline_to_macro_pipelines.get_mut(pipeline_handle).unwrap().iter().find(|(shader_defs, _macroed_pipeline_handle)| *shader_defs == renderable.shader_defs) { + let final_handle = if let Some((_shader_defs, macroed_pipeline_handle)) = + compiled_shader_map + .pipeline_to_macro_pipelines + .get_mut(pipeline_handle) + .unwrap() + .iter() + .find(|(shader_defs, _macroed_pipeline_handle)| { + *shader_defs == renderable.shader_defs + }) { macroed_pipeline_handle.clone() } else { - let pipeline_descriptor = pipeline_descriptor_storage.get(pipeline_handle).unwrap(); + let pipeline_descriptor = + pipeline_descriptor_storage.get(pipeline_handle).unwrap(); let macroed_pipeline_handle = { - let mut macroed_vertex_handle = try_compiling_shader_with_macros(&mut compiled_shader_map, &mut shader_storage, &renderable, &pipeline_descriptor.shader_stages.vertex); - let mut macroed_fragment_handle = pipeline_descriptor.shader_stages.fragment.as_ref().map(|fragment| try_compiling_shader_with_macros(&mut compiled_shader_map, &mut shader_storage, &renderable, fragment)); + let mut macroed_vertex_handle = try_compiling_shader_with_macros( + &mut compiled_shader_map, + &mut shader_storage, + &renderable, + &pipeline_descriptor.shader_stages.vertex, + ); + let mut macroed_fragment_handle = pipeline_descriptor + .shader_stages + .fragment + .as_ref() + .map(|fragment| { + try_compiling_shader_with_macros( + &mut compiled_shader_map, + &mut shader_storage, + &renderable, + fragment, + ) + }); if macroed_vertex_handle.is_some() || macroed_fragment_handle.is_some() { let mut macroed_pipeline = pipeline_descriptor.clone(); @@ -115,26 +167,41 @@ pub fn update_shader_assignments(world: &mut World, render_graph: &mut RenderGra macroed_pipeline.shader_stages.fragment = fragment; } - let macroed_pipeline_handle = pipeline_descriptor_storage.add(macroed_pipeline); + let macroed_pipeline_handle = + pipeline_descriptor_storage.add(macroed_pipeline); // TODO: get correct pass name - render_graph.add_pipeline(resource_name::pass::MAIN, macroed_pipeline_handle.clone()); + render_graph.add_pipeline( + resource_name::pass::MAIN, + macroed_pipeline_handle.clone(), + ); macroed_pipeline_handle } else { pipeline_handle.clone() } }; - let macro_pipelines = compiled_shader_map.pipeline_to_macro_pipelines.get_mut(pipeline_handle).unwrap(); - macro_pipelines.push((renderable.shader_defs.clone(), macroed_pipeline_handle.clone())); + let macro_pipelines = compiled_shader_map + .pipeline_to_macro_pipelines + .get_mut(pipeline_handle) + .unwrap(); + macro_pipelines.push(( + renderable.shader_defs.clone(), + macroed_pipeline_handle.clone(), + )); macroed_pipeline_handle }; // TODO: this will break down if pipeline layout changes. fix this with "autolayout" if let None = shader_pipeline_assignments.assignments.get(&final_handle) { - shader_pipeline_assignments.assignments.insert(final_handle.clone(), Vec::new()); + shader_pipeline_assignments + .assignments + .insert(final_handle.clone(), Vec::new()); } - let assignments = shader_pipeline_assignments.assignments.get_mut(&final_handle).unwrap(); + let assignments = shader_pipeline_assignments + .assignments + .get_mut(&final_handle) + .unwrap(); assignments.push(entity); } } diff --git a/src/render/render_graph/renderer.rs b/src/render/render_graph/renderer.rs index cb9cf4b445..5d5d0578c9 100644 --- a/src/render/render_graph/renderer.rs +++ b/src/render/render_graph/renderer.rs @@ -1,8 +1,7 @@ use crate::{ legion::prelude::*, render::render_graph::{ - DynamicUniformBufferInfo, PipelineDescriptor, RenderGraph, ResourceInfo, - TextureDescriptor, + DynamicUniformBufferInfo, PipelineDescriptor, RenderGraph, ResourceInfo, TextureDescriptor, }, }; use std::ops::Range; diff --git a/src/render/render_graph/resource.rs b/src/render/render_graph/resource.rs index 2bf29d673e..febbdf5cf5 100644 --- a/src/render/render_graph/resource.rs +++ b/src/render/render_graph/resource.rs @@ -15,4 +15,4 @@ pub enum ResourceInfo { mesh_id: usize, // pub layout: Option< }, -} \ No newline at end of file +} diff --git a/src/render/render_graph/resource_name.rs b/src/render/render_graph/resource_name.rs index a4fadb1143..9eb42f97bf 100644 --- a/src/render/render_graph/resource_name.rs +++ b/src/render/render_graph/resource_name.rs @@ -23,4 +23,4 @@ pub mod draw_target { pub mod pass { pub const MAIN: &str = "Main"; -} \ No newline at end of file +} diff --git a/src/render/render_graph/uniform.rs b/src/render/render_graph/uniform.rs index 4f9790e117..39e3565043 100644 --- a/src/render/render_graph/uniform.rs +++ b/src/render/render_graph/uniform.rs @@ -1,9 +1,10 @@ use crate::{ + core::GetBytes, math::Vec4, render::{ color::ColorSource, render_graph::{BindType, TextureViewDimension}, - }, core::GetBytes, + }, }; use legion::prelude::Entity; use std::collections::HashMap; @@ -133,8 +134,7 @@ where } } -impl AsFieldBindType for Vec4 -{ +impl AsFieldBindType for Vec4 { fn get_field_bind_type(&self) -> FieldBindType { FieldBindType::Uniform } @@ -161,4 +161,4 @@ impl DynamicUniformBufferInfo { offsets: HashMap::new(), } } -} \ No newline at end of file +} diff --git a/src/render/shader_reflect.rs b/src/render/shader_reflect.rs index 39cafc8158..789666fd4f 100644 --- a/src/render/shader_reflect.rs +++ b/src/render/shader_reflect.rs @@ -1,10 +1,10 @@ use crate::render::render_graph::{ - BindGroup, BindType, Binding, UniformProperty, UniformPropertyType, TextureViewDimension + BindGroup, BindType, Binding, TextureViewDimension, UniformProperty, UniformPropertyType, }; use spirv_reflect::{ types::{ - ReflectDescriptorBinding, ReflectDescriptorSet, ReflectDescriptorType, - ReflectTypeDescription, ReflectTypeFlags, ReflectDimension, + ReflectDescriptorBinding, ReflectDescriptorSet, ReflectDescriptorType, ReflectDimension, + ReflectTypeDescription, ReflectTypeFlags, }, ShaderModule, }; @@ -44,7 +44,7 @@ pub fn get_shader_layout(spirv_data: &[u32]) -> ShaderLayout { entry_point: entry_point_name, } } - Err(err) => panic!("Failed to reflect shader layout: {:?}", err) + Err(err) => panic!("Failed to reflect shader layout: {:?}", err), } } @@ -145,7 +145,11 @@ fn reflect_uniform_numeric(type_description: &ReflectTypeDescription) -> Uniform .type_flags .contains(ReflectTypeFlags::MATRIX) { - match (number_type, traits.numeric.matrix.column_count, traits.numeric.matrix.row_count) { + match ( + number_type, + traits.numeric.matrix.column_count, + traits.numeric.matrix.row_count, + ) { (NumberType::Float, 3, 3) => UniformPropertyType::Mat3, (NumberType::Float, 4, 4) => UniformPropertyType::Mat4, (number_type, column_count, row_count) => panic!(