Merge pull request #170 from pdiaz/main
Ensure that it also works using Meta XR Simulator in macOS
This commit is contained in:
@@ -40,18 +40,17 @@ impl Plugin for OxrPassthroughPlugin {
|
|||||||
pub fn insert_passthrough(world: &mut World) {
|
pub fn insert_passthrough(world: &mut World) {
|
||||||
let session = world.resource::<OxrSession>();
|
let session = world.resource::<OxrSession>();
|
||||||
|
|
||||||
let (passthrough, passthrough_layer) = create_passthrough(
|
if let Ok((passthrough, passthrough_layer)) = create_passthrough(
|
||||||
session,
|
session,
|
||||||
openxr::PassthroughFlagsFB::IS_RUNNING_AT_CREATION,
|
openxr::PassthroughFlagsFB::IS_RUNNING_AT_CREATION,
|
||||||
openxr::PassthroughLayerPurposeFB::RECONSTRUCTION,
|
openxr::PassthroughLayerPurposeFB::RECONSTRUCTION,
|
||||||
)
|
) {
|
||||||
.unwrap();
|
world
|
||||||
|
.resource_mut::<OxrRenderLayers>()
|
||||||
world
|
.insert(0, Box::new(PassthroughLayer));
|
||||||
.resource_mut::<OxrRenderLayers>()
|
world.insert_resource(passthrough);
|
||||||
.insert(0, Box::new(PassthroughLayer));
|
world.insert_resource(passthrough_layer);
|
||||||
world.insert_resource(passthrough);
|
}
|
||||||
world.insert_resource(passthrough_layer);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn resume_passthrough(
|
pub fn resume_passthrough(
|
||||||
|
|||||||
@@ -115,10 +115,15 @@ unsafe impl GraphicsExt for openxr::Vulkan {
|
|||||||
<Vulkan as Api>::Instance::desired_extensions(&vk_entry, VK_TARGET_VERSION_ASH, flags)?;
|
<Vulkan as Api>::Instance::desired_extensions(&vk_entry, VK_TARGET_VERSION_ASH, flags)?;
|
||||||
let device_extensions = [
|
let device_extensions = [
|
||||||
ash::khr::swapchain::NAME,
|
ash::khr::swapchain::NAME,
|
||||||
|
#[cfg(target_os = "android")]
|
||||||
ash::khr::draw_indirect_count::NAME,
|
ash::khr::draw_indirect_count::NAME,
|
||||||
ash::khr::timeline_semaphore::NAME,
|
ash::khr::timeline_semaphore::NAME,
|
||||||
ash::khr::imageless_framebuffer::NAME,
|
ash::khr::imageless_framebuffer::NAME,
|
||||||
ash::khr::image_format_list::NAME,
|
ash::khr::image_format_list::NAME,
|
||||||
|
#[cfg(target_os = "macos")]
|
||||||
|
ash::khr::portability_subset::NAME,
|
||||||
|
#[cfg(target_os = "macos")]
|
||||||
|
ash::ext::metal_objects::NAME,
|
||||||
];
|
];
|
||||||
|
|
||||||
let vk_instance = unsafe {
|
let vk_instance = unsafe {
|
||||||
|
|||||||
Reference in New Issue
Block a user