Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Bevy: Orientation

Game engineECS + scheduler + rendererRevision 78002f6

Bevy is a data-oriented game engine built from ordinary Rust crates. Its most important architectural unit is the entity-component-system world: entities identify things, components hold typed data, and systems declare how they access that data.

runner → App::update → ordered schedules
                         ↓
                dependency + access graph
                         ↓
              compatible systems in parallel
                         ↓
                 apply deferred Commands
                         ↓
             extract into render sub-application

Design thesis

Bevy turns typed function parameters into a runtime data-access graph, then uses that graph to run independent systems in parallel without allowing conflicting access to the same world data.

The main crates to retain are bevy_app for lifecycle and plugins, bevy_ecs for worlds and scheduling, bevy_tasks for execution pools, bevy_asset for background loading, and bevy_render for extraction and GPU work.

This study follows one frame. It does not inventory every engine subsystem.