bevy/crates/bevy_pbr/src
Alice Cecile 5d514fb24f Reduce internal system order ambiguities, and add an example explaining them (#7383)
# Objective

- Bevy should not have any "internal" execution order ambiguities. These clutter the output of user-facing error reporting, and can result in nasty, nondetermistic, very difficult to solve bugs.
- Verifying this currently involves repeated non-trivial manual work. 

## Solution

- [x] add an example to quickly check this
- ~~[ ] ensure that this example panics if there are any unresolved ambiguities~~
- ~~[ ] run the example in CI 😈~~

There's one tricky ambiguity left, between UI and animation. I don't have the tools to fix this without system set configuration, so the remaining work is going to be left to #7267 or another PR after that.

```
2023-01-27T18:38:42.989405Z  INFO bevy_ecs::schedule::ambiguity_detection: Execution order ambiguities detected, you might want to add an explicit dependency relation between some of these systems:
 * Parallel systems:
 -- "bevy_animation::animation_player" and "bevy_ui::flex::flex_node_system"
    conflicts: ["bevy_transform::components::transform::Transform"]
  ```

## Changelog

Resolved internal execution order ambiguities for:
1. Transform propagation (ignored, we need smarter filter checking).
2. Gamepad processing (fixed).
3. bevy_winit's window handling (fixed).
4. Cascaded shadow maps and perspectives (fixed).

Also fixed a desynchronized state bug that could occur when the `Window` component is removed and then added to the same entity in a single frame.
2023-01-31 01:47:00 +00:00
..
prepass Fix post_processing and shader_prepass examples (#7419) 2023-01-30 22:53:08 +00:00
render bevy_pbr: Clear fog DynamicUniformBuffer before populating each frame (#7432) 2023-01-30 23:09:38 +00:00
alpha.rs Standard Material Blend Modes (#6644) 2023-01-21 21:46:53 +00:00
bundle.rs Cascaded shadow maps. (#7064) 2023-01-25 12:35:39 +00:00
fog.rs Add Distance and Atmospheric Fog support (#6412) 2023-01-29 15:28:56 +00:00
lib.rs Reduce internal system order ambiguities, and add an example explaining them (#7383) 2023-01-31 01:47:00 +00:00
light.rs Fix minor typos in code and docs (#7378) 2023-01-27 12:12:53 +00:00
material.rs Standard Material Blend Modes (#6644) 2023-01-21 21:46:53 +00:00
pbr_material.rs Add Distance and Atmospheric Fog support (#6412) 2023-01-29 15:28:56 +00:00
wireframe.rs Extract component derive (#7399) 2023-01-30 18:12:16 +00:00