Expand description
use bevy::prelude::*;
to import common components, bundles, and plugins.
Modules
Generation for some primitive shape meshes.
Macros
Constructs an event at the debug level.
Constructs a span at the debug level.
Constructs an event at the error level.
Constructs a span at the error level.
Constructs an event at the info level.
Constructs a span at the info level.
Constructs an event at the trace level.
Constructs a span at the trace level.
Constructs an event at the warn level.
Constructs a span at the warn level.
Structs
Command that adds a child to an entity
Filter that retrieves components of type T
that have been added since the last execution
of this system.
An ambient light, which lights the entire scene equally.
A list of VariableCurve
, and the EntityPath
to which they apply.
Animation controls
Adds animation support to an app
The AnyOf
query parameter fetches entities with any of the component types included in T.
A container of app logic and data.
Loads assets from the filesystem on background threads
Stores Assets of a given type and tracks changes to them.
Use this resource to play audio
Used internally to play audio on the current “audio device”
A source of audio data
Stores the position data of input devices of type T
A 2-dimensional boolean vector.
A 3-dimensional boolean vector.
A 4-dimensional boolean vector.
Marker struct for buttons
A UI node that is a button
The calculated clip of the node
The calculated size of the node
WorldQuery
that tracks changes and additions for component T
.
Filter that retrieves components of type T
that have been changed since the last
execution of this system.
Struct for building children onto an entity
Contains references to the child entities of this entity
When used as a resource, sets the color that is used to clear the screen between frames.
A 2d material that renders 2d meshes with a texture tinted by a uniform color
A list of commands that modify a World
, running at the end of the stage where they
have been invoked.
Algorithmically-computed indication of whether an entity is visible and should be extracted for rendering
This plugin group will add all the default plugins:
Helper for configuring and creating the default task pools. For end-users who want full control, insert the default task pools into the resource map manually. If the pools are already inserted, this helper will do nothing.
Despawns the given entity’s children recursively
Despawns the given entity and all its children recursively
A Directional light.
A component bundle for DirectionalLight
entities.
A collection of serializable dynamic entities, each with its own run-time defined set of components.
Lightweight unique ID of an entity.
Path to an entity, with Name
s. Each entity in a path must have a name.
Reads events of type T
in order and tracks which events have already been read.
Sends events of type T
.
Describe the position of an entity relative to the reference frame.
A handle into a specific Asset of type T
A non-generic version of Handle
A 2-dimensional vector.
A 3-dimensional vector.
A 4-dimensional vector.
A UI node that is an image
Wrapper type to mark a SystemParam
as an input.
A “press-able” input of type T
.
Command that inserts a child at a given index of a parent’s children, shifting following children back
A system local SystemParam
.
A 3x3 column major matrix.
A 4x4 column major matrix.
A component bundle for entities with a Mesh
and a SpecializedMaterial
.
Adds the necessary ECS resources and render logic to enable rendering entities using the given SpecializedMaterial
asset type (which includes Material
types).
Minimal plugin group that will add the following plugins:
Configuration resource for Multi-Sample Anti-Aliasing.
Unique mutable borrow of an entity’s component
Component used to identify an entity. Stores a hash for faster comparisons The hash is eagerly re-computed upon each update to the name.
Describes the size of a UI node
The basic UI node
Unique borrow of a non-Send
resource.
A filter that tests if any of the given filters apply.
Component bundle for camera entities with orthographic projection
Holds a reference to the parent entity of this entity. This component should only be present on entities that actually have a parent entity.
Component bundle for camera entities with perspective projection
Settings to control playback from the start.
A light that emits light in all directions from a central point.
A component bundle for PointLight
entities.
Component that holds the Parent
this entity had previously
Command that pushes children to the end of the entity’s children
A quaternion representing an orientation.
Provides scoped access to a World
state according to a given WorldQuery
and query filter.
An event that is sent whenever a window receives a character from the OS or underlying system.
A rect, as defined by its “side” locations
A struct used to deserialize reflected instances of a type.
Command that removes children from an entity, and removes that child’s parent and inserts it into the previous parent component
A SystemParam
that grants access to the entities that had their T
Component
removed.
Shared borrow of a resource.
Unique mutable borrow of a resource.
A shader, as defined by its ShaderSource
and ShaderStage
This is an “unprocessed” shader. It can contain preprocessor directives.
A two dimensional “size” as defined by a width and height
A Bundle of components for drawing a single sprite from a sprite sheet (also referred
to as a TextureAtlas
)
A material with “standard” properties used in PBR lighting Standard property values with pictures here https://google.github.io/filament/Material%20Properties.pdf.
Stack based state machine
Describes the style of a UI node
A builder for describing several systems at the same time.
Stores and executes systems. Execution order is not defined unless explicitly specified;
see SystemDescriptor
documentation.
The bundle of components needed to draw text in a 2D scene via a 2D OrthographicCameraBundle
.
Example usage.
A UI node that is text
An atlas containing multiple textures (like a spritesheet or a tilemap). Example usage animating sprite. Example usage loading sprite sheet.
A builder which is used to create a texture atlas from many individual sprites.
Tracks elapsed time since the last update and since the App has started
Tracks elapsed time. Enters the finished state once duration
is reached.
Represents a touch event
Describe the position of an entity. If the entity has a parent, the position is relative to its parent position.
A Bundle
of the Transform
and GlobalTransform
Component
s, which describe the position of an entity.
The base plugin for handling Transform
components
A 2-dimensional vector.
A 3-dimensional vector.
A 4-dimensional vector.
The camera that is needed to see UI elements
The color of the node
The image of the node
Describes how an attribute of a Transform
should be animated.
A 2-dimensional vector.
A 3-dimensional vector without SIMD support.
A 4-dimensional vector.
User indication of whether an entity is visible
An operating system window that can present content and receive user input.
An event that is sent when a window is repositioned in physical pixels.
Filter that selects entities with a component T
.
Filter that selects entities without a component T
.
Stores and exposes operations on entities, components, resources, and their associated metadata.
Struct for adding children to an entity directly through the World
for use in exclusive systems
Enums
Defines how each line is aligned within the flexbox.
How items are aligned according to the cross axis
Works like AlignItems
but applies only to a single item
Alpha mode
Events that happen on assets of type T
The icon to display for a window’s cursor
Defines the text direction
Whether to use Flexbox layout
Euler rotation sequences.
Events related to files being dragged and dropped on a window.
Defines how flexbox items are ordered within a flexbox
Defines if flexbox items appear on a single line or on multiple lines
Describes horizontal alignment preference for positioning & bounds.
Describes what type of input interaction has occurred for a UI node.
Defines how items are aligned according to the main axis
The key code of a keyboard input.
A button on a mouse device
Whether to show or hide overflowing items
The strategy used to position this node
The names of the default App
startup stages.
An enum that describes possible types of value in flexbox layout options
Describes vertical alignment preference for positioning & bounds. Currently a placeholder for future functionality.
Traits
Defines a set of strongly-typed labels for a class of objects
Trait defining how to build children
Trait that defines adding children to an entity directly through the World
A component is data associated with an Entity
. Each entity can have
multiple different types of components, but only one of them per type.
A type implementing this trait can be decoded as a rodio source
Trait that holds functions for despawning recursively down the transform hierarchy
Types that implement reliable change detection.
Creates an instance of the type this trait is implemented for using data from the supplied World.
A convenience trait which combines fetching and downcasting of struct fields.
A convenience trait which combines fetching and downcasting of tuple struct fields.
An extension trait providing the IntoChainSystem::chain
method for convenient System
chaining.
Conversion trait to turn something into a System
.
Materials are used alongside MaterialPlugin
and MaterialMeshBundle
to spawn entities that are rendered with a specific Material
type. They serve as an easy to use high level
way to render Mesh
entities with custom shader logic. For materials that can specialize their RenderPipelineDescriptor
based on specific material values, see SpecializedMaterial
. Material
automatically implements SpecializedMaterial
and can be used anywhere that type is used (such as MaterialPlugin
).
A collection of Bevy app logic and configuration.
Combines multiple Plugin
s into a single unit.
A reflected Rust type.
Defines a set of strongly-typed labels for a class of objects
Defines a set of strongly-typed labels for a class of objects
A reflected Rust regular struct type.
Defines a set of strongly-typed labels for a class of objects
A trait implemented for all functions that can be used as System
s.
A reflected Rust tuple struct.
Functions
An ergonomic abbreviation for Default::default()
to make initializing structs easier.
This is especially helpful when combined with “struct update syntax”.
Function for despawning an entity and all its children
Type Definitions
A component bundle for entities with a Mesh2dHandle
and a ColorMaterial
.
A component bundle for PBR entities with a Mesh
and a StandardMaterial
.
Attribute Macros
Derive Macros
Generates a dynamic plugin entry point function for the given Plugin
type.