bevy/crates
Robert Swain 479f43bbf3 Filter material handles on extraction (#4178)
# Objective

- While optimising many_cubes, I noticed that all material handles are extracted regardless of whether the entity to which the handle belongs is visible or not. As such >100k handles are extracted when only <20k are visible.

## Solution

- Only extract material handles of visible entities.
- This improves `many_cubes -- sphere` from ~42fps to ~48fps. It reduces not only the extraction time but also system commands time. `Handle<StandardMaterial>` extraction and its system commands went from 0.522ms + 3.710ms respectively, to 0.267ms + 0.227ms an 88% reduction for this system for this case. It's very view dependent but...
2022-05-03 18:28:04 +00:00
..
bevy_animation Make AnimationClip::duration return value instead of reference (#4617) 2022-04-27 23:44:06 +00:00
bevy_app Tidy up PluginGroupBuilder by moving Plugin index retrieval to it's own function (#4446) 2022-05-02 13:20:54 +00:00
bevy_asset Add file metadata to AssetIo (#2123) 2022-05-02 18:04:47 +00:00
bevy_audio Converted exclusive systems to parallel systems wherever possible (#2774) 2022-04-25 14:32:56 +00:00
bevy_core Move float_ord from bevy_core to bevy_utils (#4189) 2022-04-27 18:02:05 +00:00
bevy_core_pipeline Do not create nor execute render passes which have no phase items to draw (#4643) 2022-05-02 20:22:30 +00:00
bevy_crevice Bump Bevy to 0.8.0-dev (#4505) 2022-04-17 23:04:52 +00:00
bevy_derive Decouple some dependencies (#3886) 2022-04-27 19:08:11 +00:00
bevy_diagnostic Bump Bevy to 0.8.0-dev (#4505) 2022-04-17 23:04:52 +00:00
bevy_dylib Bump Bevy to 0.8.0-dev (#4505) 2022-04-17 23:04:52 +00:00
bevy_dynamic_plugin Bump Bevy to 0.8.0-dev (#4505) 2022-04-17 23:04:52 +00:00
bevy_ecs Add get_change_ticks method to EntityRef and EntityMut (#2539) 2022-05-02 18:44:58 +00:00
bevy_ecs_compile_fail_tests Introduce tests for derive(WorldQuery) (#4625) 2022-04-28 21:06:20 +00:00
bevy_gilrs Change gamepad.rs tuples to normal structs (#4519) 2022-05-02 13:20:55 +00:00
bevy_gltf Bump Bevy to 0.8.0-dev (#4505) 2022-04-17 23:04:52 +00:00
bevy_hierarchy Bump Bevy to 0.8.0-dev (#4505) 2022-04-17 23:04:52 +00:00
bevy_input Change gamepad.rs tuples to normal structs (#4519) 2022-05-02 13:20:55 +00:00
bevy_internal Bump Bevy to 0.8.0-dev (#4505) 2022-04-17 23:04:52 +00:00
bevy_log can specify chrome tracing file (#4618) 2022-05-03 15:35:04 +00:00
bevy_macro_utils Decouple some dependencies (#3886) 2022-04-27 19:08:11 +00:00
bevy_math Document bevy_math (#4591) 2022-04-26 18:23:29 +00:00
bevy_pbr Filter material handles on extraction (#4178) 2022-05-03 18:28:04 +00:00
bevy_reflect bevy_reflect: Add GetTypeRegistration impl for reflected tuples (#4226) 2022-05-02 18:04:48 +00:00
bevy_render Filter material handles on extraction (#4178) 2022-05-03 18:28:04 +00:00
bevy_scene Bump Bevy to 0.8.0-dev (#4505) 2022-04-17 23:04:52 +00:00
bevy_sprite Filter material handles on extraction (#4178) 2022-05-03 18:28:04 +00:00
bevy_tasks Remove unused CountdownEvent (#4290) 2022-04-26 21:20:12 +00:00
bevy_text Move float_ord from bevy_core to bevy_utils (#4189) 2022-04-27 18:02:05 +00:00
bevy_transform Make Transform propagation correct in the presence of updated children (#4608) 2022-05-02 18:04:49 +00:00
bevy_ui Do not create nor execute render passes which have no phase items to draw (#4643) 2022-05-02 20:22:30 +00:00
bevy_utils Decouple some dependencies (#3886) 2022-04-27 19:08:11 +00:00
bevy_window Converted exclusive systems to parallel systems wherever possible (#2774) 2022-04-25 14:32:56 +00:00
bevy_winit Add infallible resource getters for WorldCell (#4104) 2022-04-25 23:19:13 +00:00