Expand description
use bevy::prelude::*;
to import common components, bundles, and plugins.
Modules
Generation for some primitive shape meshes.
A collection of common adapters for piping the result of a system.
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
A filter on a component that only retains results added after the system last ran.
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.
Adds support for Assets to an App.
Loads assets from the filesystem in the background.
Stores Assets of a given type and tracks changes to them.
Used internally to play audio on the current “audio device”
A source of audio data
Stores the position data of the input devices of type
T
.A 2-dimensional
bool
vector mask.A 3-dimensional
bool
vector mask.A 4-dimensional
bool
vector mask.The background color of the node
Marker struct for buttons
A UI node that is a button
The calculated clip of the node
The calculated size of the node
The defining component for camera entities, storing information about how and what to render
through this camera.
Configuration for the “main 3d render graph”.
WorldQuery
that tracks changes and additions for component T
.A filter on a component that only retains results added or mutably dereferenced after the system last ran.
Struct for building children onto an entity
Contains references to the child entities of this entity.
A
Resource
that stores 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
Algorithmically-computed indication of whether an entity is visible and should be extracted for rendering
Adds core functionality to Apps.
An event that is sent whenever the user’s cursor enters a window.
An event that is sent whenever the user’s cursor leaves a window.
An event reporting that the mouse cursor has moved on a window.
This plugin group will add all the default plugins:
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.
To spawn a dynamic scene, you can use either:
A
DynamicScene
builder, used to build a scene from a World
by extracting some entities.A component bundle for a
DynamicScene
root.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
.An event collection that represents the events that occurred within the last two
Events::update
calls.
Events can be written to using an EventWriter
and are typically cheaply read using an EventReader
.A gamepad with an associated
ID
.An axis of a
Gamepad
.A button of a
Gamepad
.An event of a
Gamepad
.Describe the position of an entity relative to the reference frame.
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
Adds the
Image
as an asset and makes sure that they are extracted and prepared for the GPU.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 2x2 column major matrix.
A 3x3 column major matrix.
A 4x4 column major matrix.
Adds the necessary ECS resources and render logic to enable rendering entities using the given
Material
asset type.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.
An alternative to
Commands
that can be used in parallel contexts, such as those in Query::par_for_each
Holds a reference to the parent entity of this entity.
This component should only be present on entities that actually have a parent entity.
A 3D camera projection in which distant objects appear smaller than close objects.
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.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.A ray is an infinite line starting at
origin
, going in direction
.An event that is sent whenever a window receives a character from the OS or underlying system.
A rectangle defined by two opposite corners.
A struct used to operate on reflected
Component
of a type.A struct used to provide the default value of a type.
A struct used to deserialize reflected instances of a type.
A struct used to operate on reflected
Resource
of a type.A struct used to serialize reflected instances of a type.
Command that removes children from an entity, and removes that child’s parent.
Command that removes the parent of an entity, and removes that entity from the parent’s
Children
.The scan code of a
KeyboardInput
.To spawn a scene, you can use either:
A component bundle for a
Scene
root.A shader, as defined by its
ShaderSource
and ShaderStage
This is an “unprocessed” shader. It can contain preprocessor directives.A 2-dimensional area defined by a width and height.
A light that emits light in a given direction from a central point.
Behaves like a point light in a perfectly absorbant housing that
shines light only in a given direction. The direction is taken from
the transform, and can be specified with
Transform::looking_at
.A component bundle for spot light entities
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.Helper for configuring and creating the default task pools. For end-users who want full control,
set up
CorePlugin
The bundle of components needed to draw text in a 2D scene via a 2D
Camera2dBundle
.
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.
A clock that tracks how much it has advanced (and how much real time has elapsed) since
its previous update and since its creation.
Tracks elapsed time. Enters the finished state once
duration
is reached.A touch input event.
Describe the position of an entity. If the entity has a parent, the position is relative
to its parent position.
The base plugin for handling
Transform
componentsA 2-dimensional vector.
A 3-dimensional vector.
A 4-dimensional vector.
Configuration for cameras related to UI.
The 2D texture displayed for this UI node
A type which is commonly used to define positions, margins, paddings and borders.
The current scale of the UI.
Print a warning for each
Entity
with a T
component
whose parent doesn’t have a T
component.Describes how an attribute of a
Transform
should be animated.A 2-dimensional vector.
A 3-dimensional vector.
A 4-dimensional vector with SIMD support.
User indication of whether an entity is visible. Propagates down the entity hierarchy.
If an entity is hidden in this way, all
Children
(and all of their children and so on) will also be hidden.
This is done by setting the values of their ComputedVisibility
component.A
Bundle
of the Visibility
and ComputedVisibility
Component
s, which describe the visibility of an entity.An operating system window that can present content and receive user input.
Describes the information needed for creating a window.
An event that is sent when a window is repositioned in physical pixels.
A
Plugin
that defines an interface for windowing support in Bevy.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 systemsEnums
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 itemSets how a material’s base color alpha channel is used for transparency.
Events that involve assets of type
T
.The icon to display for a window’s cursor.
Defines the text direction
Whether to use a Flexbox layout model.
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
A type of a
GamepadAxis
.A type of a
GamepadButton
.The data contained in a
GamepadEvent
or GamepadEventRaw
.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
KeyboardInput
.Defines which monitor to use.
A button on a mouse device.
Whether to show or hide overflowing items
The strategy used to position this node
A configurable
CameraProjection
that can select its projection type at runtime.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.
Defines the way a window is displayed.
Defines where window should be placed at on creation.
Traits
Trait defining how to build children
Trait that defines adding children to an entity directly through the
World
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.
A trait for types which can be constructed from a reflected type.
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 for
Query
that adds hierarchy related methods.An extension trait providing the
IntoPipeSystem::pipe
method to pass input from one system into the next.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.A collection of Bevy app logic and configuration.
Combines multiple
Plugin
s into a single unit.A reflected Rust type.
A strongly-typed class of labels used to identify run criteria.
A strongly-typed class of labels used to identify
Stage
s.A reflected Rust regular struct type.
A strongly-typed class of labels used to identify
System
s.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.Derives the
FromReflect
trait.Generates an impl of the
RunCriteriaLabel
trait.Generates an impl of the
StageLabel
trait.Generates an impl of the
SystemLabel
trait.