bevy/examples/stress_tests
JoJoJet b8263b55fb Support system.in_schedule() and system.on_startup() (#7790)
# Objective

Support the following syntax for adding systems:

```rust
App::new()
    .add_system(setup.on_startup())
    .add_systems((
        show_menu.in_schedule(OnEnter(GameState::Paused)),
        menu_ssytem.in_set(OnUpdate(GameState::Paused)),
        hide_menu.in_schedule(OnExit(GameState::Paused)),
    ))
```

## Solution

Add the traits `IntoSystemAppConfig{s}`, which provide the extension methods necessary for configuring which schedule a system belongs to. These extension methods return `IntoSystemAppConfig{s}`, which `App::add_system{s}` uses to choose which schedule to add systems to.

---

## Changelog

+ Added the extension methods `in_schedule(label)` and  `on_startup()` for configuring the schedule a system belongs to.

## Future Work

* Replace all uses of `add_startup_system` in the engine.
* Deprecate this method
2023-02-24 18:33:55 +00:00
..
bevymark.rs Support system.in_schedule() and system.on_startup() (#7790) 2023-02-24 18:33:55 +00:00
many_animated_sprites.rs Base Sets (#7466) 2023-02-06 03:10:08 +00:00
many_buttons.rs Windows as Entities (#5589) 2023-01-19 00:38:28 +00:00
many_cubes.rs Base Sets (#7466) 2023-02-06 03:10:08 +00:00
many_foxes.rs added subdivisions to shape::Plane (#7546) 2023-02-13 18:20:20 +00:00
many_lights.rs Base Sets (#7466) 2023-02-06 03:10:08 +00:00
many_sprites.rs Cleanup many sprites stress tests (#7436) 2023-02-01 21:07:11 +00:00
README.md Add a stress test profile (#6901) 2022-12-20 15:59:41 +00:00
transform_hierarchy.rs Base Sets (#7466) 2023-02-06 03:10:08 +00:00
warning_string.txt Added performance warning when running stress test examples in debug mode (#5029) 2022-07-13 19:13:46 +00:00

Stress tests

These examples are used to stress test Bevy's performance in various ways. These should be run with the "stress-test" profile to accurately represent performance in production, otherwise they will run in cargo's default "dev" profile which is very slow.

Example Command

cargo run --profile stress-test --example <EXAMPLE>