diff --git a/src/render/render_graph_2/shader.rs b/src/render/render_graph_2/shader.rs index 3cf03b97f1..70e2ceb570 100644 --- a/src/render/render_graph_2/shader.rs +++ b/src/render/render_graph_2/shader.rs @@ -348,6 +348,7 @@ where for (i, (entity, _uniforms)) in query.iter_entities(world).enumerate() { // TODO: check if index has changed. if it has, then entity should be updated // TODO: only mem-map entities if their data has changed + // PERF: These hashmap inserts are pretty expensive (10 fps for 10000 entities) info.offsets.insert(entity, offset as u64); info.indices.insert(i, entity); // TODO: try getting ref first diff --git a/src/render/render_graph_2/wgpu_renderer.rs b/src/render/render_graph_2/wgpu_renderer.rs index 980448c09f..d8d916c1d2 100644 --- a/src/render/render_graph_2/wgpu_renderer.rs +++ b/src/render/render_graph_2/wgpu_renderer.rs @@ -667,7 +667,8 @@ impl<'a, 'b, 'c, 'd> RenderPass for WgpuRenderPass<'a, 'b, 'c, 'd> { if !dynamic { continue; } - + + // PERF: This hashmap get is pretty expensive (10 fps per 10000 entities) if let Some(dynamic_uniform_buffer_info) = self.renderer.dynamic_uniform_buffer_info.get(&binding.name) {