From 3f9e62cf98927a3190fac85094ec3d7b6ae5e753 Mon Sep 17 00:00:00 2001 From: JMS55 <47158642+JMS55@users.noreply.github.com> Date: Thu, 2 Mar 2023 21:11:43 +0000 Subject: [PATCH] Remove dead code after #7784 (#7875) # Objective - Remove dead code after #7784 # Changelog - Removed `SetShadowViewBindGroup`, `queue_shadow_view_bind_group()`, and `LightMeta::shadow_view_bind_group` in favor of reusing the prepass view bind group. # Migration Guide - Removed `SetShadowViewBindGroup`, `queue_shadow_view_bind_group()`, and `LightMeta::shadow_view_bind_group` in favor of reusing the prepass view bind group. --- crates/bevy_pbr/src/material.rs | 10 +---- crates/bevy_pbr/src/render/light.rs | 58 ++--------------------------- 2 files changed, 5 insertions(+), 63 deletions(-) diff --git a/crates/bevy_pbr/src/material.rs b/crates/bevy_pbr/src/material.rs index 16213b2bb1ce0d..aea0f713a27cf4 100644 --- a/crates/bevy_pbr/src/material.rs +++ b/crates/bevy_pbr/src/material.rs @@ -1,7 +1,6 @@ use crate::{ - queue_mesh_view_bind_groups, render, AlphaMode, DrawMesh, DrawPrepass, EnvironmentMapLight, - MeshPipeline, MeshPipelineKey, MeshUniform, PrepassPlugin, RenderLightSystems, - SetMeshBindGroup, SetMeshViewBindGroup, Shadow, + render, AlphaMode, DrawMesh, DrawPrepass, EnvironmentMapLight, MeshPipeline, MeshPipelineKey, + MeshUniform, PrepassPlugin, RenderLightSystems, SetMeshBindGroup, SetMeshViewBindGroup, Shadow, }; use bevy_app::{App, IntoSystemAppConfig, Plugin}; use bevy_asset::{AddAsset, AssetEvent, AssetServer, Assets, Handle}; @@ -205,11 +204,6 @@ where .after(PrepareAssetSet::PreAssetPrepare), ) .add_system(render::queue_shadows::.in_set(RenderLightSystems::QueueShadows)) - .add_system( - render::queue_shadow_view_bind_group:: - .in_set(RenderSet::Queue) - .ambiguous_with(queue_mesh_view_bind_groups), // queue_mesh_view_bind_groups does not read `shadow_view_bind_group`), - ) .add_system(queue_material_meshes::.in_set(RenderSet::Queue)); } diff --git a/crates/bevy_pbr/src/render/light.rs b/crates/bevy_pbr/src/render/light.rs index 51cc941d5a84b1..6e6783caf676fc 100644 --- a/crates/bevy_pbr/src/render/light.rs +++ b/crates/bevy_pbr/src/render/light.rs @@ -8,10 +8,7 @@ use crate::{ }; use bevy_asset::Handle; use bevy_core_pipeline::core_3d::Transparent3d; -use bevy_ecs::{ - prelude::*, - system::{lifetimeless::*, SystemParamItem}, -}; +use bevy_ecs::prelude::*; use bevy_math::{Mat4, UVec3, UVec4, Vec2, Vec3, Vec3Swizzles, Vec4, Vec4Swizzles}; use bevy_render::{ camera::Camera, @@ -20,13 +17,12 @@ use bevy_render::{ render_asset::RenderAssets, render_graph::{Node, NodeRunError, RenderGraphContext, SlotInfo, SlotType}, render_phase::{ - CachedRenderPipelinePhaseItem, DrawFunctionId, DrawFunctions, PhaseItem, RenderCommand, - RenderCommandResult, RenderPhase, TrackedRenderPass, + CachedRenderPipelinePhaseItem, DrawFunctionId, DrawFunctions, PhaseItem, RenderPhase, }, render_resource::*, renderer::{RenderContext, RenderDevice, RenderQueue}, texture::*, - view::{ComputedVisibility, ExtractedView, ViewUniformOffset, ViewUniforms, VisibleEntities}, + view::{ComputedVisibility, ExtractedView, VisibleEntities}, Extract, }; use bevy_transform::{components::GlobalTransform, prelude::Transform}; @@ -579,7 +575,6 @@ impl GlobalLightMeta { #[derive(Resource, Default)] pub struct LightMeta { pub view_gpu_lights: DynamicUniformBuffer, - pub shadow_view_bind_group: Option, } #[derive(Component)] @@ -1549,25 +1544,6 @@ pub fn prepare_clusters( } } -pub fn queue_shadow_view_bind_group( - render_device: Res, - prepass_pipeline: Res>, - mut light_meta: ResMut, - view_uniforms: Res, -) { - if let Some(view_binding) = view_uniforms.uniforms.binding() { - light_meta.shadow_view_bind_group = - Some(render_device.create_bind_group(&BindGroupDescriptor { - entries: &[BindGroupEntry { - binding: 0, - resource: view_binding, - }], - label: Some("shadow_view_bind_group"), - layout: &prepass_pipeline.view_layout, - })); - } -} - #[allow(clippy::too_many_arguments)] pub fn queue_shadows( shadow_draw_functions: Res>, @@ -1772,31 +1748,3 @@ impl Node for ShadowPassNode { Ok(()) } } - -pub struct SetShadowViewBindGroup; -impl RenderCommand for SetShadowViewBindGroup { - type Param = SRes; - type ViewWorldQuery = Read; - type ItemWorldQuery = (); - - #[inline] - fn render<'w>( - _item: &Shadow, - view_uniform_offset: &'_ ViewUniformOffset, - _entity: (), - light_meta: SystemParamItem<'w, '_, Self::Param>, - pass: &mut TrackedRenderPass<'w>, - ) -> RenderCommandResult { - pass.set_bind_group( - I, - light_meta - .into_inner() - .shadow_view_bind_group - .as_ref() - .unwrap(), - &[view_uniform_offset.offset], - ); - - RenderCommandResult::Success - } -}