إنشاء المحتوى باستخدام إضافات OpenXR متوافقة

أجهزة XR المشمولة
تساعدك هذه الإرشادات في إنشاء تجارب لهذه الأنواع من أجهزة XR.
سماعات الرأس بنظام الواقع الممتد
نظارات سلكية بنظام الواقع الممتد

يتوافق Android XR مع OpenXR من خلال مواصفات OpenXR 1.1 وقائمة طويلة من إضافات المورّدين التابعين لجهات خارجية. يوفّر استخدام هذه الإضافات تجربة مألوفة عند تطوير تطبيقات XR. تتطلّب بعض هذه الإمكانات أذونات تشغيل Android. إذا كنت تريد إنشاء تطبيقات مباشرةً باستخدام واجهات برمجة تطبيقات OpenXR، يمكنك العثور على ملفات العناوين المطلوبة في مستودع jetpack-xr-natives.

إضافات Android XR الخاصة بالمورِّدين

اسم الإضافة

الوصف

إصدار Spatial API

XR_ANDROID_anchor_sharing_export

إنّ نقاط الارتكاز التي ينشئها تطبيق من خلال XR_ANDROID_trackables وXR_EXT_spatial_anchor وXR_ANDROID_spatial_anchor_space تكون مرتبطة بجلسة معيّنة، وبالتالي لا تظهر للتطبيقات الأخرى. يتيح هذا الامتداد للتطبيقات مشاركة نقاط الارتكاز مع التطبيقات الأخرى التي يتم تشغيلها.

v1

XR_ANDROID_body_tracking

تستخدِم هذه الميزة IK لتحديد موضع الجسم استنادًا إلى موضع الرأس واليدين.

الأذونات: Body Tracking

v2

XR_ANDROID_composition_layer_passthrough_mesh

بالنسبة إلى الأجهزة التي تتيح أوضاع دمج بيئات متعددة

الأذونات: SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_depth_texture

يتيح هذا الامتداد للتطبيق طلب خرائط العمق للبيئة الواقعية المحيطة بسماعة الرأس والاستعلام عن دقة العمق المتوافقة عند الإنشاء.

الأذونات: SCENE_UNDERSTANDING_FINE

v1

XR_ANDROID_device_anchor_persistence

تسمح هذه الإضافة باستمرار التطبيق.

الأذونات: SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_enumerate_system_extension_properties

تتيح هذه الإضافة للتطبيقات تحديد الإضافات المتوافقة مع إعدادات النظام الحالية.

v3

XR_ANDROID_eye_tracking

تتيح هذه الإضافة للتطبيقات الحصول على موضع واتجاه عيني المستخدم، بالإضافة إلى حالة تتبُّع العين.

الأذونات: EYE_TRACKING_FINE

v1

XR_ANDROID_face_tracking

تتيح هذه الإضافة للتطبيقات الحصول على أوزان أشكال المزج وعرض تعابير الوجه في تجارب الواقع الممتد.

الأذونات: FACE_TRACKING

v1

XR_ANDROID_face_tracking_data_source

يتيح هذا الامتداد للتطبيقات الحصول على بيانات تتبّع تعابير الوجه من مصادر بيانات متعددة.

الأذونات: FACE_TRACKING وRECORD_AUDIO

v3

XR_ANDROID_hand_mesh

تتيح هذه الإضافة إدخالات تتبُّع اليد الممثّلة كشبكة يد ديناميكية.

الأذونات: HAND_TRACKING

v1

XR_ANDROID_light_estimation

يسمح هذا الامتداد للتطبيق بطلب بيانات تمثّل الإضاءة في البيئة الواقعية المحيطة بسماعة الرأس.

الأذونات: SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_light_estimation_cubemap

تستند هذه الإضافة إلى إضافة XR_ANDROID_light_estimation الأساسية.

الأذونات: SCENE_UNDERSTANDING_FINE

v3

XR_ANDROID_mouse_interaction

توفّر هذه الإضافة XrPath للحصول على إدخال الماوس، وتحدّد وضعية إجراء شائعة الاستخدام لملفات تعريف الماوس الخاصة بالمستخدمين، بما في ذلك أجهزة الماوس وأجهزة لوحة اللمس.

v1

XR_ANDROID_passthrough_camera_state

قد يستغرق بدء تشغيل كاميرا العرض المباشر بعض الوقت، وقد لا تكون متاحة على الفور.

v1

XR_ANDROID_performance_metrics

يوفّر هذا الامتداد واجهات برمجة تطبيقات لتعداد عدّادات مقاييس الأداء المختلفة لجهاز XR الحالي والاستعلام عنها.

v1

XR_ANDROID_raycast

تسمح هذه الإضافة للتطبيق بتنفيذ عمليات تتبُّع الأشعة على العناصر القابلة للتتبُّع في البيئة.

الأذونات: SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_recommended_resolution

تتيح هذه الإضافة لوقت التشغيل إرسال إشعار إلى التطبيق عند تغيُّر الدقة المقترَحة.

v1

XR_ANDROID_recommended_settings

يمكن أن تكون البيئة التلقائية للمستخدم في حالات متعدّدة باستخدام مزيج من وضع المزج وطريقة الإدخال.

v1

XR_ANDROID_scene_meshing

تهدف هذه الإضافة إلى توفير شبكات تمثّل تقريبًا العناصر المادية في بيئة المستخدم.

v1

XR_ANDROID_spatial_anchor_space

تتيح الدالة xrCreateSpatialAnchorEXT المحدّدة في إضافة XR_EXT_spatial_anchor للتطبيقات إنشاء نقاط ربط مكانية باستخدام معرّف XrSpatialEntityEXT لتمثيلها.

في المقابل، تنشئ هذه الإضافة مرساة مكانية يتم تمثيلها بمقبض XrSpace بدلاً من ذلك.

الأذونات: SCENE_UNDERSTANDING_COARSE

v3

XR_ANDROID_spatial_annotation_tracking

توفّر هذه الإضافة إمكانية تتبُّع التعليقات التوضيحية للإضافة XR_EXT_spatial_entity من أجل تتبُّع التعليقات التوضيحية المختلفة في المشهد. ويتيح للتطبيقات وضع تراكبات على كائنات مادية أو افتراضية محدّدة من خلال مراجع وقت التشغيل.

الأذونات: SCENE_UNDERSTANDING_FINE

v3

XR_ANDROID_spatial_component_subsumed_by

تستند هذه الإضافة إلى XR_EXT_spatial_entity وتوفّر مكوّنًا جديدًا لـ XR_SPATIAL_CAPABILITY_PLANE_TRACKING_EXT لعرض XrSpatialEntityIdEXT الذي يشمل العنصر الحالي.

الأذونات: SCENE_UNDERSTANDING_COARSE

v3

XR_ANDROID_spatial_discovery_raycast

تستند هذه الإضافة إلى XR_EXT_spatial_entity وتوفّر وظيفة raycast للإمكانات المكانية الحالية.

الأذونات: SCENE_UNDERSTANDING_FINE

v3

XR_ANDROID_spatial_entity_bound_anchor

تتيح هذه الإضافة للتطبيقات إنشاء نقاط ارتساء وربطها بالكائنات المكانية.

الأذونات: SCENE_UNDERSTANDING_COARSE

v3

XR_ANDROID_spatial_object_tracking

تستند هذه الإضافة إلى XR_EXT_spatial_entity وتحدّد إمكانية مكانية لتتبُّع مجموعة من الكائنات المادية المحدّدة مسبقًا بدون الحاجة إلى مجموعة بيانات إدخال من التطبيق.

الأذونات: SCENE_UNDERSTANDING_COARSE

v3

XR_ANDROID_trackables

تسمح هذه الإضافة للتطبيق بالوصول إلى عناصر قابلة للتتبُّع من البيئة المحيطة.

الأذونات: SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_trackables_image

يتيح هذا الامتداد تتبُّع الصور المستوية على النحو المحدّد من خلال مجموعات من الصور المرجعية المُدخَلة.

الأذونات: SCENE_UNDERSTANDING_COARSE

v3

XR_ANDROID_trackables_marker

تتيح هذه الإضافة تتبُّع العلامات المادية.

الأذونات: SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_trackables_object

تتيح هذه الإضافة تتبُّع الأجسام المادية.

الأذونات: SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_trackables_qr_code

يتيح هذا الامتداد تتبُّع رموز الاستجابة السريعة المادية وفك تشفير بيانات رموز الاستجابة السريعة.

الأذونات: SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_unbounded_reference_space

تتيح هذه الإضافة للتطبيقات إنشاء XR_REFERENCE_SPACE_TYPE_UNBOUNDED_ANDROID مساحة مرجعية.

v1

الإضافات التابعة لجهات خارجية

اسم الإضافة

الوصف

إصدار Spatial API

XR_MND_headless

قد تحتاج بعض التطبيقات إلى الوصول إلى أجهزة التفاعل مع الواقع الممتد بدون عرض أي محتوى صور على الشاشة أو الشاشات.

v1

XR_KHR_binding_modification

تضيف هذه الإضافة بنية اختيارية يمكن تضمينها في سلسلة XrInteractionProfileSuggestedBinding::next التي يتم تمريرها إلى xrSuggestInteractionProfileBindings لتحديد معلومات إضافية لتعديل سلوك الربط التلقائي.

v1

XR_EXT_debug_utils

نظرًا إلى طبيعة واجهة OpenXR، لا تتوفّر معلومات كثيرة عن الأخطاء للمطوّر والتطبيق.

v1

XR_EXT_hand_tracking

تتيح هذه الإضافة للتطبيقات تحديد المفاصل الفردية لعمليات الإدخال التي يتم تتبُّعها باليد.

الأذونات: HAND_TRACKING

v1

XR_EXT_performance_settings

تحدّد هذه الإضافة واجهة برمجة تطبيقات تتيح للتطبيق تقديم تلميحات حول الأداء إلى وقت التشغيل، كما تتيح لوقت التشغيل إرسال إشعارات ذات صلة بالأداء إلى التطبيق. ويتيح ذلك للطرفين التوصّل إلى حل وسط مناسب بين أداء وحدة المعالجة المركزية (CPU) ووحدة معالجة الرسومات (GPU) المطلوبَين، والاستدامة الحرارية، وتوفير تجربة مستخدم جيدة ومتسقة طوال الجلسة.

v1

XR_FB_display_refresh_rate

على المنصات التي تتيح تعديل معدّل تحديث الشاشة ديناميكيًا

v1

XR_FB_swapchain_update_state

تتيح هذه الإضافة للتطبيق تعديل حالة قابلة للتغيير معيّنة مرتبطة بسلسلة تبديل وإجراء طلبات بحث عنها.

v1

XR_FB_foveation

التركيز البؤري في سياق الواقع الممتد هو أسلوب عرض يتيح عرض منطقة الصورة القريبة من النقطة البؤرية أو النقرة في العين بدقة أعلى من المناطق المحيطة.

v1

XR_FB_foveation_configuration

على أجهزة العرض المثبّتة على الرأس من Facebook، يمكن للمطوّرين إنشاء ملفات تعريف تركيز النظر التي يتم إنشاؤها بواسطة بيئة التشغيل للخصائص البصرية والأداء.

v1

XR_FB_foveation_vulkan

تتطلّب واجهة برمجة التطبيقات للرسومات Vulkan تطبيق صورة على سلسلة التبديل لتطبيق نمط التثبيت البؤري.

v1

XR_FB_space_warp

توفّر هذه الإضافة إمكانية تفعيل تكنولوجيا Space Warp على التطبيق.

v1

XR_KHR_opengl_es_enable

يجب أن يتم توفير هذه الإضافة من خلال أوقات التشغيل التي تتيح استخدام التطبيقات لواجهات برمجة تطبيقات OpenGL ES للعرض.

v1

XR_KHR_android_create_instance

عندما ينشئ التطبيق كائن XrInstance على أنظمة Android

v1

XR_KHR_android_surface_swapchain

أحد الأنشطة الشائعة في الواقع الممتد هو عرض بث مباشر للصور.

v1

XR_KHR_android_thread_settings

لكي يكون الواقع الممتد مريحًا، من المهم أن تقدّم التطبيقات اللقطات بسرعة وبشكل متّسق.

v1

XR_KHR_composition_layer_color_scale_bias

يتم تطبيق مقياس الألوان والانحياز على لون الطبقة أثناء التركيب، بعد تحويله إلى تمثيل ألفا المضاعف مسبقًا.

v1

XR_KHR_composition_layer_cube

تضيف هذه الإضافة نوع طبقة إضافية تتيح أخذ عيّنات مباشرةً من خرائط المكعبات.

v1

XR_KHR_composition_layer_cylinder

تضيف هذه الإضافة نوع طبقة إضافيًا يجب أن يربط فيه وقت تشغيل الواقع الممتد نسيجًا ناتجًا عن سلسلة تبديل داخل جزء من أسطوانة. يمكن تخيّل ذلك بالطريقة نفسها التي يرى بها المشاهد شاشة تلفزيون منحنية.

v1

XR_KHR_composition_layer_depth

تحدّد هذه الإضافة نوع طبقة إضافية يسمح للتطبيقات بإرسال صور العمق مع صور الألوان في طبقات العرض.

v1

XR_KHR_composition_layer_equirect

تضيف هذه الإضافة نوع طبقة إضافيًا يجب أن يربط فيه وقت تشغيل XR صورة مشفّرة مستطيلة متساوية الزوايا ناتجة عن سلسلة تبديل داخل كرة.

v1

XR_KHR_composition_layer_equirect2

تضيف هذه الإضافة نوع طبقة إضافيًا يجب أن يربط فيه وقت تشغيل XR صورة مشفّرة مستطيلة متساوية المساحة ناتجة عن سلسلة تبديل داخل كرة.

تستخدم هذه الإضافة طريقة مختلفة لتحديد المَعلمات تتوافق بشكل أكبر مع صيغة XR_KHR_composition_layer_cylinder، ولكنّها مكافئة وظيفيًا لـ XR_KHR_composition_layer_equirect.

v1

XR_KHR_convert_timespec_time

توفّر هذه الإضافة وظيفتَين للتحويل بين الوقت الرتيب timespec وXrTime.

v1

XR_KHR_vulkan_enable

تتيح هذه الإضافة استخدام واجهة برمجة تطبيقات الرسومات Vulkan في وقت تشغيل OpenXR.

v1

XR_KHR_vulkan_enable2

تتيح هذه الإضافة استخدام واجهة برمجة تطبيقات الرسومات Vulkan في وقت تشغيل OpenXR.

v1

XR_KHR_loader_init

في بعض الأنظمة الأساسية، يجب تهيئة أداة التحميل باستخدام مَعلمات خاصة بالنظام الأساسي قبل أن يتم التحميل.

v1

XR_KHR_loader_init_android

في نظام التشغيل Android، تحتاج بعض عمليات تنفيذ أداة التحميل إلى أن يقدّم التطبيق معلومات إضافية عند بدء التشغيل.

v1

XR_KHR_swapchain_usage_input_attachment_bit

تتيح هذه الإضافة لأحد التطبيقات تحديد أنّه يجب إنشاء صور swapchain بطريقة تتيح استخدامها كمرفقات إدخال. في وقت كتابة هذه الفقرة، لا يؤثّر هذا الجزء إلا في سلاسل تبديل Vulkan.

v1

XR_EXT_dpad_binding

يتيح هذا الامتداد للتطبيق ربط إجراء رقمي واحد أو أكثر بلوحة لمس أو عصا تحكّم كما لو كانت لوحة مفاتيح متعددة الاتجاهات من خلال تحديد مسارات مكوّنات إضافية لاقتراح عمليات الربط.

v1

XR_EXT_uuid

تحدّد هذه الإضافة معرّفًا فريدًا عالميًا يتّبع RFC 4122.

v1

XR_FB_composition_layer_depth_test

يتيح هذا الامتداد إنشاء تركيبة من الطبقات تم اختبار عمقها.

v1

XR_EXT_eye_gaze_interaction

توفّر هذه الإضافة XrPath للحصول على إدخال من خلال تتبُّع العين من أداة تتبُّع العين، وذلك لتفعيل التفاعلات من خلال تتبُّع العين.

الأذونات: EYE_TRACKING_FINE

v1

XR_EXT_hand_interaction

يحدّد هذا الامتداد أربع وضعيات إجراء شائعة الاستخدام لجميع ملفات تعريف تفاعل المستخدم مع اليد، بما في ذلك أجهزة تتبُّع اليد وأجهزة التحكّم في الحركة.

v1

XR_KHR_visibility_mask

تتيح هذه الإضافة توفير قناع رسم لكل عرض للتطبيقات.

v1

XR_META_foveation_eye_tracked

تعرض ميزة "العرض البؤري المستند إلى تتبُّع العين" كثافة بكسل أقل في محيط نظرة المستخدم.

الأذونات: EYE_TRACKING_FINE

v1

XR_FB_hand_tracking_aim

تقدّم إضافة XR_EXT_hand_tracking قائمة بوضعيات مفاصل اليد التي تمثّل الإعداد الحالي للأيدي التي يتم تتبّعها. تضيف هذه الإضافة طبقة من التعرّف على الإيماءات يستخدمها النظام.

الأذونات: HAND_TRACKING

v1

XR_EXT_palm_pose

يحدّد هذا الامتداد "معرّف وضع قياسي" جديدًا لملفات تعريف التفاعل، ويُطلق عليه اسم "palm_ext".

v1

XR_VARJO_foveated_rendering

توفر سماعات رأس Varjo شاشات ذات كثافة عالية للغاية لوحدات البكسل في المنطقة الوسطى من الشاشة.

الأذونات: EYE_TRACKING_FINE

v1

XR_VARJO_quad_views

تضيف هذه الإضافة نوعًا جديدًا من إعدادات العرض، وهو XR_VIEW_CONFIGURATION_TYPE_PRIMARY_QUAD_VARJO إلى XrViewConfigurationType الذي يمكن أن تعرضه الدالة xrEnumerateViewConfigurations للإشارة إلى أنّ وقت التشغيل يتيح 4 منافذ عرض.

v1

XR_META_vulkan_swapchain_create_info

باستخدام هذه الإضافة، يمكن لتطبيق يستند إلى Vulkan تمرير VkImageCreateFlags أو VkImageUsageFlags إضافيَين من خلال ربط بنية XrVulkanSwapchainCreateInfoMETA ببنية XrSwapchainCreateInfo عند استدعاء xrCreateSwapchain.

v1

XR_FB_hand_tracking_mesh

تقدّم إضافة XR_EXT_hand_tracking قائمة بوضعيات مفاصل اليد، ولكن لا تتضمّن آلية لعرض شبكة متداخلة مجسمة لليد.

الأذونات: HAND_TRACKING

v1

XR_FB_composition_layer_image_layout

لا تحدّد هذه الإضافة نوع طبقة تركيب جديدًا.

v1

XR_KHR_maintenance1

تضيف XR_KHR_maintenance1 مجموعة من الميزات الثانوية التي تم استبعادها أو تجاهلها عن قصد من إصدار OpenXR 1.0 الأصلي.

v1

XR_FB_composition_layer_settings

تسمح هذه الإضافة للتطبيقات بطلب استخدام خيارات المعالجة، مثل التوضيح أو أخذ عينات فائقة، على طبقة تركيبة.

v1

XR_KHR_locate_spaces

تقدّم هذه الإضافة الدالة xrLocateSpacesKHR.

v1

XR_EXT_local_floor

تحتوي مواصفات OpenXR الأساسية على نوعَين من مساحات المراجع الثابتة في العالم XrSpace في XrReferenceSpaceType.

v1

XR_EXT_spatial_marker_tracking

تستند هذه الإضافة إلى XR_EXT_spatial_entity وتتيح للتطبيقات رصد العلامات وتتبُّعها في بيئتها.

الأذونات: SCENE_UNDERSTANDING_COARSE

v1

XR_EXT_spatial_persistence

يتيح هذا الامتداد للتطبيقات إمكانية رصد الكيانات المكانية وربطها بجلسات التطبيق.

الأذونات: SCENE_UNDERSTANDING_COARSE

v1

XR_EXT_spatial_anchor

تستند هذه الإضافة إلى XR_EXT_spatial_entity وتسمح للتطبيقات بإنشاء نقاط ارتساء مكانية.

الأذونات: SCENE_UNDERSTANDING_COARSE

v1

XR_EXT_spatial_plane_tracking

تستند هذه الإضافة إلى XR_EXT_spatial_entity وتحدّد إمكانية تتبُّع المستوى المكاني لإطار الكيانات المكانية.

v1

XR_EXT_spatial_entity

تقدّم هذه الإضافة المفاهيم والأسس اللازمة لفهم المشاهد والاستدلال المكاني في OpenXR.

v1

XR_EXT_future

في أنظمة الواقع الممتد، هناك بعض العمليات التي تستغرق وقتًا طويلاً ولا يمكن إكمالها بشكل معقول ضمن حلقة إطار عادية.

v1

XR_FB_color_space

قد تستخدم أجهزة XR مساحة ألوان مختلفة عن العديد من الشاشات المستخدَمة في عملية التطوير.

v1

XR_EXT_composition_layer_inverted_alpha

يوفّر هذا الامتداد علامة، وعند تطبيقها على طبقة تركيب، يتم عكس تفسير قيمة قناة ألفا في صور سلسلة التبديل الخاصة بالطبقة.

v1

XR_EXT_frame_synthesis

توفّر هذه الإضافة إمكانية تفعيل تركيب اللقطات في التطبيقات استنادًا إلى بيانات إضافية يقدّمها التطبيق.

v3

XR_QCOM_trackables_image_operations

توفّر هذه السمة عمليات تتبُّع الصور من Qualcomm للعناصر القابلة للتتبُّع.

v3

XR_QCOM_trackables_qr_code_operations

توفّر هذه السمة عمليات تتبُّع رموز الاستجابة السريعة من Qualcomm للعناصر القابلة للتتبُّع.

v3

XR_EXT_user_presence

يضيف هذا الامتداد حدثًا جديدًا لإرسال إشعار عند رصد النظام لتغيير في حالة حضور المستخدم.

v3

XR_KHR_extended_struct_name_lengths

تزيد هذه الإضافة من الحد الأقصى لحجم أسماء البُنى وتوفّر دالة جديدة للوصول إلى هذه الأسماء الموسّعة الجديدة.

v3

XR_EXT_interaction_profile_battery_state_display

توفّر XR_EXT_interaction_profile_battery_state_display آلية تتيح للتطبيقات الاستعلام عن وقت التشغيل للحصول على معلومات حول حالة البطارية للأجهزة المستخدَمة مع ملفات تعريف التفاعل.

v3


‫OpenXR™‎ وشعار OpenXR هما علامتان تجاريتان مملوكتان لشركة The Khronos Group Inc. ‎ ومسجَّلتان كعلامة تجارية في الصين والاتحاد الأوروبي واليابان والمملكة المتحدة.