//! Renders a 2D scene containing a single, moving sprite. use bevy::prelude::*; fn main() { App::new() .add_plugins(DefaultPlugins) .add_systems(Startup, setup) .add_systems(Update, sprite_movement) .run(); } #[derive(Component)] enum Direction { Up, Down, } fn setup(mut commands: Commands, asset_server: Res) { commands.spawn(Camera2dBundle::default()); commands.spawn(( SpriteBundle { texture: asset_server.load("branding/icon.png"), transform: Transform::from_xyz(100., 0., 0.), ..default() }, Direction::Up, )); } /// The sprite is animated by changing its translation depending on the time that has passed since /// the last frame. fn sprite_movement(time: Res