use bevy::prelude::*;
use bevy_chair::*;
fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(ChairPlugin)
.add_startup_system(setup)
.add_system(spin)
.run();
}
fn setup(
mut commands: Commands,
assets: Res<AssetServer>,
mut materials: ResMut<Assets<StandardMaterial>>
) {
commands.spawn((
PbrBundle {
mesh: assets.load("chair.chr"),
material: materials.add(StandardMaterial {
base_color_texture: Some(assets.load("texture.png")),
..default()
}),
..default()
},
Spin
));
commands.spawn(PointLightBundle {
transform: Transform::from_translation(Vec3::new(3.0, 4.0, 3.0)),
..default()
});
commands.spawn(Camera3dBundle {
transform: Transform::from_translation(Vec3::new(1.5, 2.7, 4.0))
.looking_at(Vec3::new(0.0, 0.0, 0.0), Vec3::Y),
..default()
});
}
#[derive(Component)]
struct Spin;
fn spin(time: Res<Time>, mut query: Query<&mut Transform, With<Spin>>) {
for mut transform in query.iter_mut() {
transform.rotate_local_y(0.1 * time.delta_seconds());
}
}