Expand description
This crate is about everything concerning the highest-level, application layer of a Bevy app.
Modules
Structs
- A container of app logic and data.
- An event that indicates the
Appshould exit. This will fully exit the app process at the start of the next tick of the schedule. - A strongly-typed identifier for an
AppLabel. - Runs first in the schedule. This is run by the
Mainschedule. - The schedule that contains systems which only run after a fixed period of time has elapsed.
- Runs last in the schedule. This is run by the
Mainschedule. - The schedule that contains the app logic that is evaluated each tick of
App::update(). - Defines the schedules to be run for the
Mainschedule, including their order. - Facilitates the creation and configuration of a
PluginGroup. Provides a build ordering to ensure thatPlugins which produce/require aResourceare built before/after dependent/dependingPlugins.Plugins inside the group can be disabled, enabled or reordered. - The schedule that contains logic that must run after
Update. For example, synchronizing “local transforms” in a hierarchy to “global” absolute transforms. This enables thePostUpdatetransform-sync system to react to “local transform” changes inUpdatewithout theUpdatesystems needing to know about (or add scheduler dependencies for) the “global transform sync system”. - The schedule that contains logic that must run before
Update. For example, a system that reads raw keyboard input OS events into anEventsresource. This enables systems inUpdateto consume the events from theEventsresource without actually knowing about (or taking a direct scheduler dependency on) the “os-level keyboard event sytsem”. - Runs the
FixedUpdateschedule in a loop according until all relevant elapsed time has been “consumed”. This is run by theMainschedule. - The schedule that runs once when the app starts. This is run by the
Mainschedule. - Runs state transitions. This is run by the
Mainschedule. - The schedule that contains app logic. This is run by the
Mainschedule.
Enums
Traits
- A strongly-typed class of labels used to identify an
App. - A collection of Bevy app logic and configuration.
- Combines multiple
Plugins into a single unit. - Types that represent a set of
Plugins.
Type Aliases
- A type representing an unsafe function that returns a mutable pointer to a
Plugin. It is used for dynamically loading plugins.
Derive Macros
- Generates an impl of the
AppLabeltrait. - Generates a dynamic plugin entry point function for the given
Plugintype.