add d3d12 support and fix globe example

This commit is contained in:
Schmarni
2024-06-22 18:11:11 +02:00
parent c1528d612f
commit 1e0b39c274
4 changed files with 8 additions and 7 deletions

2
Cargo.lock generated
View File

@@ -1194,7 +1194,7 @@ dependencies = [
"ash", "ash",
"bevy 0.14.0-rc.3", "bevy 0.14.0-rc.3",
"color-eyre", "color-eyre",
"d3d12 0.19.0", "d3d12 0.20.0",
"eyre", "eyre",
"futures-lite", "futures-lite",
"jni 0.20.0", "jni 0.20.0",

View File

@@ -43,7 +43,7 @@ wgpu-hal = "0.21"
[target.'cfg(windows)'.dependencies] [target.'cfg(windows)'.dependencies]
openxr = { workspace = true, features = [ "linked", "static", "mint" ] } openxr = { workspace = true, features = [ "linked", "static", "mint" ] }
winapi = { version = "0.3.9", optional = true } winapi = { version = "0.3.9", optional = true }
d3d12 = { version = "0.19", features = ["libloading"], optional = true } d3d12 = { version = "0.20", features = ["libloading"], optional = true }
[target.'cfg(all(target_family = "unix", not(target_arch = "wasm32")) )'.dependencies] [target.'cfg(all(target_family = "unix", not(target_arch = "wasm32")) )'.dependencies]
openxr = { workspace = true, features = [ "mint" ] } openxr = { workspace = true, features = [ "mint" ] }

View File

@@ -3,6 +3,7 @@ use bevy::prelude::*;
use bevy::render::render_asset::RenderAssetUsages; use bevy::render::render_asset::RenderAssetUsages;
use bevy::transform::components::Transform; use bevy::transform::components::Transform;
use bevy_oxr::graphics::XrAppInfo; use bevy_oxr::graphics::XrAppInfo;
use bevy_oxr::prelude::XrSystems;
use bevy_oxr::resources::XrViews; use bevy_oxr::resources::XrViews;
use bevy_oxr::xr_input::hands::common::HandInputDebugRenderer; use bevy_oxr::xr_input::hands::common::HandInputDebugRenderer;
use bevy_oxr::xr_input::interactions::{ use bevy_oxr::xr_input::interactions::{
@@ -29,7 +30,7 @@ fn main() {
}) })
.add_plugins(LogDiagnosticsPlugin::default()) .add_plugins(LogDiagnosticsPlugin::default())
.add_systems(Startup, setup) .add_systems(Startup, setup)
.add_systems(Update, (proto_locomotion, pull_to_ground).chain()) .add_systems(Update, (proto_locomotion, pull_to_ground).chain().xr_only())
.insert_resource(PrototypeLocomotionConfig::default()) .insert_resource(PrototypeLocomotionConfig::default())
.add_systems(Startup, spawn_controllers_example) .add_systems(Startup, spawn_controllers_example)
.add_plugins(HandInputDebugRenderer) .add_plugins(HandInputDebugRenderer)

View File

@@ -4,7 +4,7 @@ use std::sync::{Arc, Mutex};
// use anyhow::Context; // use anyhow::Context;
use bevy::math::uvec2; use bevy::math::uvec2;
use bevy::prelude::*; use bevy::prelude::*;
use bevy::render::renderer::{RenderAdapter, RenderAdapterInfo, RenderDevice, RenderQueue}; use bevy::render::renderer::{RenderAdapter, RenderAdapterInfo, RenderDevice, RenderQueue, WgpuWrapper};
use bevy::window::RawHandleWrapper; use bevy::window::RawHandleWrapper;
use eyre::{Context, ContextCompat}; use eyre::{Context, ContextCompat};
use openxr as xr; use openxr as xr;
@@ -203,9 +203,9 @@ pub fn initialize_xr_instance(
}), }),
blend_mode.into(), blend_mode.into(),
wgpu_device.into(), wgpu_device.into(),
RenderQueue(wgpu_queue.into()), RenderQueue(Arc::new(WgpuWrapper::new(wgpu_queue))),
RenderAdapterInfo(wgpu_adapter.get_info()), RenderAdapterInfo(WgpuWrapper::new(wgpu_adapter.get_info())),
RenderAdapter(wgpu_adapter.into()), RenderAdapter(Arc::new(WgpuWrapper::new(wgpu_adapter))),
wgpu_instance.into(), wgpu_instance.into(),
)) ))
} }