Examples
These examples demonstrate the main features of Bevy and how to use them.
To run an example, use the command cargo run --example <Example>
.
Hello, World!
Example |
Main |
Description |
hello_world |
hello_world.rs |
Runs a minimal example that outputs "hello world" |
2D Rendering
3D Rendering
Example |
File |
Description |
load_model |
3d/load_model.rs |
Loads and renders a simple model |
msaa |
3d/msaa.rs |
Configures MSAA (Multi-Sample Anti-Aliasing) for smoother edges |
parenting |
3d/parenting.rs |
Demonstrates parent->child relationships and relative transformations |
3d_scene |
3d/3d_scene.rs |
Simple 3D scene with basic shapes and lighting |
spawner |
3d/spawner.rs |
Renders a large number of cubes with changing position and material |
texture |
3d/texture.rs |
Shows configuration of texture materials |
z_sort_debug |
3d/z_sort_debug.rs |
Visualizes camera Z-ordering |
Application
Assets
Audio
Example |
File |
Description |
audio |
audio/audio.rs |
Shows how to load and play an audio file |
Diagnostics
ECS (Entity Component System)
Example |
File |
Description |
event |
ecs/event.rs |
Illustrates event creation, activation, and reception |
ecs_guide |
ecs/ecs_guide.rs |
Full guide to Bevy's ECS |
startup_system |
ecs/startup_system.rs |
Demonstrates a startup system (one that runs once when the app starts up) |
Games
Example |
File |
Description |
breakout |
game/breakout.rs |
An implementation of the classic game "Breakout" |
Input
Scene
Example |
File |
Description |
scene |
scene/scene.rs |
Demonstrates loading from and saving scenes to files |
properties |
scene/properties.rs |
Demonstrates Properties (similar to reflections in other languages) in Bevy |
Shaders
Example |
File |
Description |
shader_custom_material |
shader/shader_custom_material.rs |
Illustrates creating a custom material and a shader that uses it |
shader_defs |
shader/shader_defs.rs |
Demonstrates creating a custom material that uses "shaders defs" (a tool to selectively toggle parts of a shader) |
UI (User Interface)
Example |
File |
Description |
button |
ui/button.rs |
Illustrates creating and updating a button |
text |
ui/text.rs |
Illustrates creating and updating text |
font_atlas_debug |
ui/font_atlas_debug.rs |
Illustrates how FontAtlases are populated (used to optimize text rendering internally) |
ui |
ui/ui.rs |
Illustrates various features of Bevy UI |
Window