Game Engine Patterns
Best practices for Bevy 0.18, bevy_ecs_tiled, and Avian2d based on patterns in this codebase.
Bevy
ECS Core
Components, resources, queries, systems, commands, SystemParam. See references/bevy-ecs-core.md
Events & Communication
Events, observers, triggers. See references/bevy-events.md
Scheduling
Run conditions, system ordering. See references/bevy-scheduling.md
State Management
States, state transitions. See references/bevy-state.md
UI
Nodes & layout, flexbox, text, images. See references/bevy-ui.md
Rendering 2D
Sprites, texture atlases, cameras, transforms, z-ordering. See references/bevy-rendering.md
Animation
Sprite animation, timers. See references/bevy-animation.md
Assets
Asset loading, handles, custom loaders. See references/bevy-assets.md
Input
Keyboard input. See references/bevy-input.md
Plugins
Plugin structure, configuration. See references/bevy-plugins.md
Bundles
Custom bundles, required components. See references/bevy-bundles.md
Tiled (bevy_ecs_tiled)
Map Loading & Events
TiledMapAsset, spawning maps, MapCreated, ColliderCreated. See references/tiled-loading.md
Tile Properties & Data
Custom properties, property-to-component mapping, tilemap components, coordinate conversion. See references/tiled-properties.md
Physics Integration
TiledPhysicsPlugin setup. See references/tiled-physics.md
Avian Physics (avian2d)
Rigid Bodies
RigidBody types, locked axes. See references/avian-rigid-bodies.md
Colliders
Collider shapes, compound colliders. See references/avian-colliders.md
Collision Detection
Collision layers, collision events, sensors. See references/avian-collision.md
Spatial Queries
Point queries. See references/avian-queries.md
Movement
Linear velocity. See references/avian-movement.md
Configuration
Physics plugins setup, gravity, length units, debug plugin. See references/avian-config.md