bevy/crates
Robin KAY dc25edd0a2
Fix MSAA writeback when 3 or more cameras have the same target. (#11968)
# Objective

If multiple cameras render to the same target with MSAA enabled, only
the first and the last camera output will appear in the final output*.
This is because each camera maintains a separate flag to track the
active main texture. The first camera renders to texture A and all
subsequent cameras first write-back from A and then render into texture
B. Hence, camera 3 onwards will overwrite the work of the previous
camera.

\* This would manifest slightly differently if there were other calls to
post_process_write() in a more complex setup.

The is a functional regression from Bevy 0.12.

## Solution

The flag which tracks the active main texture should be shared between
cameras with the same `NormalizedRenderTarget`. Add the
`Arc<AtomicUsize>` to the existing per-target cache.
2024-02-20 22:16:28 +00:00
..
bevy_a11y Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_animation Rework animation to be done in two phases. (#11707) 2024-02-19 14:59:54 +00:00
bevy_app Use is method instead of downcast_ref::<T>().is_some() in App::is_plugin_added (#11949) 2024-02-18 22:17:17 +00:00
bevy_asset Fix example docs on embedded_asset macro (#12003) 2024-02-20 16:13:30 +00:00
bevy_audio Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_core Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_core_pipeline rename Camera3dBundle's 'dither' field to 'deband_dither' to align with Camera2dBundle (#11939) 2024-02-19 14:01:35 +00:00
bevy_derive Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_diagnostic Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_dylib Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_dynamic_plugin Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_ecs Remove APIs deprecated in 0.13 (#11974) 2024-02-19 19:04:47 +00:00
bevy_ecs_compile_fail_tests Remove APIs deprecated in 0.13 (#11974) 2024-02-19 19:04:47 +00:00
bevy_encase_derive Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_gilrs Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_gizmos Add a [lints] entry for workspace members missing it (#11900) 2024-02-19 17:09:47 +00:00
bevy_gltf Gltf loader now shows which file is missing pre baked tangents (#11854) 2024-02-19 16:49:32 +00:00
bevy_hierarchy Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_input also look in just_pressed touches for position (#7743) 2024-02-19 16:44:50 +00:00
bevy_internal Rework animation to be done in two phases. (#11707) 2024-02-19 14:59:54 +00:00
bevy_log Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_macro_utils Update to toml_edit 0.22 (#11973) 2024-02-19 08:11:29 +00:00
bevy_macros_compile_fail_tests Standardize toml format with taplo (#10594) 2023-11-21 01:04:14 +00:00
bevy_math Add single-f32 constructors for a few (very few) primitives (#11934) 2024-02-18 07:43:45 +00:00
bevy_mikktspace Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_pbr Save 16 bytes per MeshUniform in uniform/storage buffers (#11999) 2024-02-20 16:25:25 +00:00
bevy_ptr Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_reflect Add method for querying whether a given short type path is ambiguous (#11840) 2024-02-19 16:47:11 +00:00
bevy_reflect_compile_fail_tests bevy_reflect_derive: Clean up attribute logic (#11777) 2024-02-12 15:16:27 +00:00
bevy_render Fix MSAA writeback when 3 or more cameras have the same target. (#11968) 2024-02-20 22:16:28 +00:00
bevy_scene Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_sprite Implement Debug for SpriteBundle and SpriteSheetBundle (#10506) 2024-02-19 16:38:48 +00:00
bevy_tasks Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_text Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_time Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_transform Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_ui Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00
bevy_utils refactor: Extract parallel queue abstraction (#7348) 2024-02-19 16:31:15 +00:00
bevy_window typo (#11955) 2024-02-18 20:16:15 +00:00
bevy_winit Release 0.13.0 (#11920) 2024-02-17 09:24:25 +00:00