update to bevy 0.14

Signed-off-by: Schmarni <marnistromer@gmail.com>
This commit is contained in:
Schmarni
2024-07-05 03:19:02 +02:00
parent 5e0c09eaee
commit 81779bd76e
21 changed files with 850 additions and 400 deletions

View File

@@ -15,10 +15,10 @@ pub struct OxrPassthroughPlugin;
impl Plugin for OxrPassthroughPlugin {
fn build(&self, app: &mut App) {
let resources = app
.world
.world()
.get_resource::<OxrInstance>()
.and_then(|instance| {
app.world
app.world()
.get_resource::<OxrSystemId>()
.map(|system_id| (instance, system_id))
});

View File

@@ -1,3 +1,5 @@
use std::sync::Arc;
use bevy::prelude::*;
use bevy::render::extract_resource::ExtractResourcePlugin;
use bevy::render::renderer::RenderAdapter;
@@ -5,6 +7,7 @@ use bevy::render::renderer::RenderAdapterInfo;
use bevy::render::renderer::RenderDevice;
use bevy::render::renderer::RenderInstance;
use bevy::render::renderer::RenderQueue;
use bevy::render::renderer::WgpuWrapper;
use bevy::render::settings::RenderCreation;
use bevy::render::MainWorld;
use bevy::render::RenderApp;
@@ -90,10 +93,10 @@ impl Plugin for OxrInitPlugin {
RenderPlugin {
render_creation: RenderCreation::manual(
device.into(),
RenderQueue(queue.into()),
RenderAdapterInfo(adapter_info),
RenderAdapter(adapter.into()),
RenderInstance(wgpu_instance.into()),
RenderQueue(Arc::new(WgpuWrapper::new(queue))),
RenderAdapterInfo(WgpuWrapper::new(adapter_info)),
RenderAdapter(Arc::new(WgpuWrapper::new(adapter))),
RenderInstance(Arc::new(WgpuWrapper::new(wgpu_instance))),
),
synchronous_pipeline_compilation: self.synchronous_pipeline_compilation,
},
@@ -121,10 +124,10 @@ impl Plugin for OxrInitPlugin {
.insert_non_send_resource(session_create_info)
.init_non_send_resource::<OxrSessionCreateNextChain>();
app.world
app.world_mut()
.spawn((TransformBundle::default(), XrTrackingRoot));
app.world
app.world_mut()
.resource_mut::<Events<XrStateChanged>>()
.send(XrStateChanged(XrState::Available));

View File

@@ -277,7 +277,7 @@ pub fn update_views_render_world(
let openxr::Vector3f { x, y, z } = view.pose.position;
let translation = Vec3::new(x, y, z);
transform.translation = translation;
extracted_view.transform = root.0.mul_transform(transform);
extracted_view.world_from_view = root.0.mul_transform(transform);
}
}