diff options
| author | Sébastien Crozet <developer@crozet.re> | 2022-04-28 13:19:58 +0200 |
|---|---|---|
| committer | Sébastien Crozet <developer@crozet.re> | 2022-04-28 13:19:58 +0200 |
| commit | 5063fa420392455f7926f1ba3e65612f79a0b066 (patch) | |
| tree | 6efb5ee5b045521f9c4ffe605ac2dcfb593ba1ff /src_testbed/testbed.rs | |
| parent | 8ffb0d1658d448074f5ca2b77aee33f755761e24 (diff) | |
| download | rapier-5063fa420392455f7926f1ba3e65612f79a0b066.tar.gz rapier-5063fa420392455f7926f1ba3e65612f79a0b066.tar.bz2 rapier-5063fa420392455f7926f1ba3e65612f79a0b066.zip | |
Testbed: switch to bevy 0.7
Diffstat (limited to 'src_testbed/testbed.rs')
| -rw-r--r-- | src_testbed/testbed.rs | 37 |
1 files changed, 17 insertions, 20 deletions
diff --git a/src_testbed/testbed.rs b/src_testbed/testbed.rs index 2c40cf2..6996cd4 100644 --- a/src_testbed/testbed.rs +++ b/src_testbed/testbed.rs @@ -26,7 +26,7 @@ use crate::harness::Harness; use crate::physx_backend::PhysxWorld; use bevy::pbr::wireframe::WireframePlugin; use bevy::render::camera::Camera; -use bevy::render::options::{WgpuFeatures, WgpuOptions}; +use bevy::render::render_resource::WgpuFeatures; use bevy_egui::EguiContext; #[cfg(feature = "dim2")] @@ -363,16 +363,10 @@ impl TestbedApp { app.insert_resource(WindowDescriptor { title, - vsync: true, ..Default::default() }) .insert_resource(ClearColor(Color::rgb(0.15, 0.15, 0.15))) .insert_resource(Msaa { samples: 4 }) - .insert_resource(WgpuOptions { - // Required for wireframes. - features: WgpuFeatures::POLYGON_MODE_LINE, - ..Default::default() - }) .insert_resource(AmbientLight { brightness: 0.3, ..Default::default() @@ -389,15 +383,15 @@ impl TestbedApp { #[cfg(feature = "other-backends")] app.insert_non_send_resource(self.other_backends); - app.add_startup_system(setup_graphics_environment.system()) + app.add_startup_system(setup_graphics_environment) .insert_non_send_resource(self.graphics) .insert_resource(self.state) .insert_non_send_resource(self.harness) .insert_resource(self.builders) .insert_non_send_resource(self.plugins) .add_stage_before(CoreStage::Update, "physics", SystemStage::single_threaded()) - .add_system_to_stage("physics", update_testbed.system()) - .add_system(egui_focus.system()); + .add_system_to_stage("physics", update_testbed) + .add_system(egui_focus); init(&mut app); app.run(); } @@ -856,11 +850,14 @@ fn setup_graphics_environment(mut commands: Commands) { commands .spawn_bundle(PerspectiveCameraBundle { - transform: Transform::from_matrix(Mat4::face_toward( - Vec3::new(-30.0, 30.0, 100.0), - Vec3::new(0.0, 10.0, 0.0), - Vec3::new(0.0, 1.0, 0.0), - )), + transform: Transform::from_matrix( + Mat4::look_at_rh( + Vec3::new(-30.0, 30.0, 100.0), + Vec3::new(0.0, 10.0, 0.0), + Vec3::new(0.0, 1.0, 0.0), + ) + .inverse(), + ), ..Default::default() }) .insert(OrbitCamera { @@ -900,9 +897,9 @@ fn setup_graphics_environment(mut commands: Commands) { }); } -fn egui_focus(ui_context: Res<EguiContext>, mut cameras: Query<&mut OrbitCamera>) { +fn egui_focus(mut ui_context: ResMut<EguiContext>, mut cameras: Query<&mut OrbitCamera>) { let mut camera_enabled = true; - if ui_context.ctx().wants_pointer_input() { + if ui_context.ctx_mut().wants_pointer_input() { camera_enabled = false; } for mut camera in cameras.iter_mut() { @@ -922,7 +919,7 @@ fn update_testbed( mut harness: NonSendMut<Harness>, #[cfg(feature = "other-backends")] mut other_backends: NonSendMut<OtherBackends>, mut plugins: NonSendMut<Plugins>, - ui_context: Res<EguiContext>, + mut ui_context: ResMut<EguiContext>, mut gfx_components: Query<(&mut Transform,)>, mut cameras: Query<(&Camera, &GlobalTransform, &mut OrbitCamera)>, keys: Res<Input<KeyCode>>, @@ -957,11 +954,11 @@ fn update_testbed( // Update UI { let harness = &mut *harness; - ui::update_ui(&ui_context, &mut state, harness); + ui::update_ui(&mut ui_context, &mut state, harness); for plugin in &mut plugins.0 { plugin.update_ui( - &ui_context, + &mut ui_context, harness, &mut graphics, &mut commands, |
