Crate bevy[][src]

Bevy is an open-source modular game engine built in Rust, with a focus on developer productivity and performance.

Check out the Bevy website for more information, read the Bevy Book for a step-by-step guide, and engage with our community if you have any questions or ideas!

Example

Here is a simple “Hello World” Bevy app:

use bevy::prelude::*;

fn main() {
   App::build()
       .add_system(hello_world_system.system())
       .run();
}

fn hello_world_system() {
   println!("hello world");
}

Don’t let the simplicity of the example above fool you. Bevy is a fully featured game engine and it gets more powerful every day!

This Crate

The bevy crate is just a container crate that makes it easier to consume Bevy subcrates. The defaults provide a “full” engine experience, but you can easily enable / disable features in your project’s Cargo.toml to meet your specific needs. See Bevy’s Cargo.toml for a full list of features available.

If you prefer, you can also consume the individual bevy crates directly. Each module in the root of this crate, except for the prelude, can be found on crates.io with bevy_ appended to the front, e.g. app -> bevy_app.

Modules

app

Build bevy apps, create plugins, and read events.

asset

Load and store assets and resources for Apps.

audio

Provides types and plugins for audio playback.

core

Contains core plugins and utilities for time.

diagnostic

Useful diagnostic plugins and types for bevy apps.

dynamic_plugin
ecs

Bevy’s entity-component-system.

gilrs
gltf

Support for GLTF file loading.

input

Resources and events for inputs, e.g. mouse/keyboard, touch, gamepads, etc.

log

Logging capabilities

math

Math types (Vec3, Mat4, Quat, etc) and helpers.

pbr

Physically based rendering.

prelude

use bevy::prelude::*; to import common components, bundles, and plugins.

reflect

Type reflection used for dynamically interacting with rust types.

render

Cameras, meshes, textures, shaders, and pipelines.

scene

Save/load collections of entities and components to/from file.

sprite

Items for sprites, rects, texture atlases, etc.

tasks

Pools for async, IO, and compute tasks.

text

Text drawing, styling, and font assets.

transform

Local and global transforms (e.g. translation, scale, rotation).

ui

User interface components and widgets.

utils
wgpu

A render backend utilizing wgpu.

window

Configuration, creation, and management of one or more windows.

winit

Structs

DefaultPlugins
MinimalPlugins