From 92c6b715f47a7f01c25dcb7538007f0a942b9b84 Mon Sep 17 00:00:00 2001 From: Robert Swain Date: Mon, 30 Jan 2023 23:09:38 +0000 Subject: [PATCH] bevy_pbr: Clear fog DynamicUniformBuffer before populating each frame (#7432) # Objective - Fix a bug causing performance to drop over time because the GPU fog buffer was endlessly growing ## Solution - Clear the fog buffer every frame before populating it --- crates/bevy_pbr/src/render/fog.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/crates/bevy_pbr/src/render/fog.rs b/crates/bevy_pbr/src/render/fog.rs index f2bb22a73205f8..d3125e2e8975ac 100644 --- a/crates/bevy_pbr/src/render/fog.rs +++ b/crates/bevy_pbr/src/render/fog.rs @@ -53,6 +53,8 @@ pub fn prepare_fog( mut fog_meta: ResMut, views: Query<(Entity, Option<&FogSettings>), With>, ) { + fog_meta.gpu_fogs.clear(); + for (entity, fog) in &views { let gpu_fog = if let Some(fog) = fog { match &fog.falloff {