fix ci(hopefully) and fix suboptimal behavior in bevy_xr_utils
Signed-off-by: Schmarni <marnistromer@gmail.com>
This commit is contained in:
@@ -55,11 +55,13 @@
|
||||
//!
|
||||
use bevy::prelude::*;
|
||||
use bevy_mod_openxr::{
|
||||
action_binding::OxrSuggestActionBinding, action_set_attaching::OxrAttachActionSet,
|
||||
action_set_syncing::OxrActionSetSyncSet, action_set_syncing::OxrSyncActionSet,
|
||||
resources::OxrInstance, session::OxrSession,
|
||||
action_binding::OxrSuggestActionBinding,
|
||||
action_set_attaching::OxrAttachActionSet,
|
||||
action_set_syncing::{OxrActionSetSyncSet, OxrSyncActionSet},
|
||||
openxr_session_available, openxr_session_running,
|
||||
resources::OxrInstance,
|
||||
session::OxrSession,
|
||||
};
|
||||
use bevy_mod_xr::session::{session_available, session_running};
|
||||
use openxr::{Path, Vector2f};
|
||||
|
||||
use std::borrow::Cow;
|
||||
@@ -69,37 +71,40 @@ impl Plugin for XRUtilsActionsPlugin {
|
||||
fn build(&self, app: &mut App) {
|
||||
app.configure_sets(
|
||||
Startup,
|
||||
XRUtilsActionSystemSet::CreateEvents.run_if(session_available),
|
||||
XRUtilsActionSystemSet::CreateEvents.run_if(openxr_session_available),
|
||||
);
|
||||
app.configure_sets(
|
||||
PreUpdate,
|
||||
XRUtilsActionSystemSet::SyncActionStates.run_if(session_running),
|
||||
XRUtilsActionSystemSet::SyncActionStates.run_if(openxr_session_running),
|
||||
);
|
||||
app.add_systems(
|
||||
Startup,
|
||||
create_openxr_events
|
||||
.in_set(XRUtilsActionSystemSet::CreateEvents)
|
||||
.run_if(session_available),
|
||||
.run_if(openxr_session_available),
|
||||
);
|
||||
app.add_systems(
|
||||
Update,
|
||||
sync_active_action_sets.run_if(openxr_session_running),
|
||||
);
|
||||
app.add_systems(Update, sync_active_action_sets.run_if(session_running));
|
||||
app.add_systems(
|
||||
PreUpdate,
|
||||
sync_and_update_action_states_f32
|
||||
.run_if(session_running)
|
||||
.run_if(openxr_session_running)
|
||||
.in_set(XRUtilsActionSystemSet::SyncActionStates)
|
||||
.after(OxrActionSetSyncSet),
|
||||
);
|
||||
app.add_systems(
|
||||
PreUpdate,
|
||||
sync_and_update_action_states_bool
|
||||
.run_if(session_running)
|
||||
.run_if(openxr_session_running)
|
||||
.in_set(XRUtilsActionSystemSet::SyncActionStates)
|
||||
.after(OxrActionSetSyncSet),
|
||||
);
|
||||
app.add_systems(
|
||||
PreUpdate,
|
||||
sync_and_update_action_states_vector
|
||||
.run_if(session_running)
|
||||
.run_if(openxr_session_running)
|
||||
.in_set(XRUtilsActionSystemSet::SyncActionStates)
|
||||
.after(OxrActionSetSyncSet),
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user