bevy/crates
Rob Parrett 05c87f3c01
Fix text2d view-visibility (#10100)
# Objective

Fixes #9676
Possible alternative to #9708

`Text2dBundles` are not currently drawn because the render-world-only
entities for glyphs that are created in `extract_text2d_sprite` are not
tracked by the per-view `VisibleEntities`.

## Solution

Add an `Option<Entity>` to `ExtractedSprite` that keeps track of the
original entity that caused a "glyph entity" to be created.

Use that in `queue_sprites` if it exists when checking view visibility.

## Benchmarks

Quick benchmarks. Average FPS over 1500 frames.

| bench | before fps | after fps | diff |
|-|-|-|-|
|many_sprites|884.93|879.00|🟡 -0.7%|
|bevymark -- --benchmark --waves 100 --per-wave 1000 --mode
sprite|75.99|75.93|🟡 -0.1%|
|bevymark -- --benchmark --waves 50 --per-wave 1000 --mode
mesh2d|32.85|32.58|🟡 -0.8%|
2023-10-13 19:14:31 +00:00
..
bevy_a11y Various accessibility API updates. (#9989) 2023-10-02 21:22:52 +00:00
bevy_animation refactor: Change Option<With<T>> query params to Has<T> (#9959) 2023-10-02 01:21:41 +00:00
bevy_app reflect: TypePath part 2 (#8768) 2023-10-09 19:33:03 +00:00
bevy_asset Removed anyhow (#10003) 2023-10-06 07:20:13 +00:00
bevy_audio More ergonomic spatial audio (#9800) 2023-10-09 19:43:56 +00:00
bevy_core Bevy Asset V2 (#8624) 2023-09-07 02:07:27 +00:00
bevy_core_pipeline Deferred Renderer (#9258) 2023-10-12 22:10:38 +00:00
bevy_derive bevy_derive: Fix #[deref] breaking other attributes (#9551) 2023-08-28 17:36:18 +00:00
bevy_diagnostic Improve doc formatting. (#9840) 2023-09-18 19:43:56 +00:00
bevy_dylib Bump Version after Release (#9106) 2023-07-10 21:19:27 +00:00
bevy_dynamic_plugin Bump Version after Release (#9106) 2023-07-10 21:19:27 +00:00
bevy_ecs Make builder types take and return Self (#10001) 2023-10-09 19:46:17 +00:00
bevy_ecs_compile_fail_tests Updates for rust 1.73 (#10035) 2023-10-06 00:31:10 +00:00
bevy_encase_derive Bump Version after Release (#9106) 2023-07-10 21:19:27 +00:00
bevy_gilrs Finish documenting bevy_gilrs (#10010) 2023-10-04 21:10:20 +00:00
bevy_gizmos Deferred Renderer (#9258) 2023-10-12 22:10:38 +00:00
bevy_gltf Removed anyhow (#10003) 2023-10-06 07:20:13 +00:00
bevy_hierarchy Fix some warnings shown in nightly (#10012) 2023-10-05 05:41:09 +00:00
bevy_input Change AxisSettings livezone default (#10090) 2023-10-12 17:58:32 +00:00
bevy_internal Fix 2d_shapes and general 2D mesh instancing (#10051) 2023-10-08 20:17:01 +00:00
bevy_log Update tracy-client requirement from 0.15 to 0.16 (#9436) 2023-08-15 07:45:21 +00:00
bevy_macro_utils Update toml_edit requirement from 0.19 to 0.20 (#10058) 2023-10-09 11:55:16 +00:00
bevy_macros_compile_fail_tests bevy_derive: Fix #[deref] breaking other attributes (#9551) 2023-08-28 17:36:18 +00:00
bevy_math Automatic batching/instancing of draw commands (#9685) 2023-09-21 22:12:34 +00:00
bevy_mikktspace Fix erronenous glam version (#9653) 2023-08-31 12:55:17 +00:00
bevy_pbr pbr shader cleanup (#10105) 2023-10-13 19:12:40 +00:00
bevy_ptr Put #[repr(transparent)] attr to bevy_ptr types (#9068) 2023-07-14 18:55:15 +00:00
bevy_reflect Removed once_cell (#10079) 2023-10-12 10:20:07 +00:00
bevy_reflect_compile_fail_tests Improve TypeUuid's derive macro error messages (#9315) 2023-10-02 12:42:01 +00:00
bevy_render chore: Renamed RenderInstance trait to ExtractInstance (#10065) 2023-10-13 17:06:53 +00:00
bevy_scene Make builder types take and return Self (#10001) 2023-10-09 19:46:17 +00:00
bevy_sprite Fix text2d view-visibility (#10100) 2023-10-13 19:14:31 +00:00
bevy_tasks add test for nested scopes (#10026) 2023-10-05 06:05:43 +00:00
bevy_text Fix text2d view-visibility (#10100) 2023-10-13 19:14:31 +00:00
bevy_time ignore time channel error (#9981) 2023-10-01 07:55:17 +00:00
bevy_transform Updates for rust 1.73 (#10035) 2023-10-06 00:31:10 +00:00
bevy_ui Fix UI borders (#10078) 2023-10-13 17:17:16 +00:00
bevy_utils Use EntityHashMap<Entity, T> for render world entity storage for better performance (#9903) 2023-09-27 08:28:28 +00:00
bevy_window Various accessibility API updates. (#9989) 2023-10-02 21:22:52 +00:00
bevy_winit Allow Bevy to start from non-main threads on supported platforms (#10020) 2023-10-06 13:26:06 +00:00