XR_ANDROID_eye_tracking
Name String
XR_ANDROID_eye_tracking
نوع الإضافة
إضافة مثيل
رقم الإضافة المسجَّل
457
المراجعة
1
حالة التصديق
لم تتم المصادقة عليها
الاعتماد على الإضافات والإصدارات
تاريخ آخر تعديل
2025-01-17
حالة الملكية الفكرية
ما مِن مطالبات معروفة بشأن الملكية الفكرية.
المساهمون
سبنسر كوين، Google
جاريد فايندر، Google
ليفانا تشن، Google
كيني فيركايمر، Google
براسانثي غورومورثي، Google
نيهاف جاين، Google
نظرة عامة
تتيح هذه الإضافة للتطبيقات الحصول على موضع عيني المستخدم واتجاههما، بالإضافة إلى حالة تتبُّع العين.
يتم توفير بيانات تتبُّع العين في وضعَين: التقريبي والدقيق. يوفّر التتبُّع التقريبي تقديرًا تقريبيًا لحركة عينَي المستخدم، بينما يوفّر التتبُّع الدقيق تقديرًا أكثر دقة. يُعدّ التتبُّع التقريبي مخصّصًا للتطبيقات التي تريد تقديم تمثيل أساسي يشبه الصورة الرمزية، بينما يُعدّ التتبُّع الدقيق مخصّصًا للتطبيقات الأكثر دقة.
للتفاعل، يجب استخدام XR_EXT_eye_gaze_interaction.
الأذونات
يجب أن تتضمّن تطبيقات Android الإذن android.permission.EYE_TRACKING_COARSE أو android.permission.EYE_TRACKING_FINE في ملف البيان الخاص بها. تُعتبر هذه الأذونات خطيرة. يجب أن يطلب التطبيق الإذن أثناء التشغيل لاستخدام هذه الوظائف:
- xrCreateEyeTrackerANDROID (إذن واحد على الأقل)
- xrGetCoarseTrackingEyesInfoANDROID (android.permission.EYE_TRACKING_COARSE)
- xrGetFineTrackingEyesInfoANDROID (android.permission.EYE_TRACKING_FINE)
(مستوى الحماية: خطير)
فحص إمكانات النظام
يتم تعريف بنية XrSystemEyeTrackingPropertiesANDROID على النحو التالي:
typedef struct XrSystemEyeTrackingPropertiesANDROID {
XrStructureType type;
void* next;
XrBool32 supportsEyeTracking;
} XrSystemEyeTrackingPropertiesANDROID;
أوصاف الأعضاء
-
typeهو XrStructureType لهذه البنية. -
nextهوNULLأو مؤشر إلى البنية التالية في سلسلة البنى. لا يتم تحديد مثل هذه البُنى في OpenXR الأساسية أو هذه الإضافة. -
supportsEyeTrackingهي قيمةXrBool32تشير إلى ما إذا كان النظام الحالي يتيح تتبّع العين.
يمكن للتطبيق فحص ما إذا كان النظام قادرًا على تتبُّع حركة العين من خلال توسيع XrSystemProperties باستخدام بنية XrSystemEyeTrackingPropertiesANDROID عند استدعاء xrGetSystemProperties .
إذا عرض وقت التشغيل XR_FALSE لـ supportsEyeTracking، يجب أن يعرض وقت التشغيل XR_ERROR_FEATURE_UNSUPPORTED من xrCreateEyeTrackerANDROID .
الاستخدام الصالح (ضمني)
- يجب تفعيل الإضافة
XR_ANDROID_eye_trackingقبل استخدام XrSystemEyeTrackingPropertiesANDROID - يجب أن يكون
typeXR_TYPE_SYSTEM_EYE_TRACKING_PROPERTIES_ANDROID -
nextيجب أن تكونNULLأو مؤشرًا صالحًا إلى البنية التالية في سلسلة البنية
إنشاء مؤشر تتبُّع العين
XR_DEFINE_HANDLE(XrEyeTrackerANDROID)
يمثّل المقبض XrEyeTrackerANDROID أداة لتتبُّع العين وتحديد المكان الذي ينظر إليه المستخدم بدقة.
تُعدّ بيانات تتبُّع حركة العين معلومات شخصية حساسة وترتبط ارتباطًا وثيقًا بالخصوصية والسلامة الشخصية. ننصح بشدة بأن تطلب التطبيقات التي تخزّن بيانات تتبُّع العين أو تنقلها من المستخدم دائمًا موافقة نشطة ومحدّدة لإجراء ذلك.
يستخدم التطبيق هذا المؤشر للوصول إلى بيانات تتبُّع العين باستخدام وظائف أخرى في هذه الإضافة.
توفّر ميزة "تتبُّع العين" تمثيلاً لوضعية العين وحالتها في المشهد.
يتم تعريف الدالة xrCreateEyeTrackerANDROID على النحو التالي:
XrResult xrCreateEyeTrackerANDROID(
XrSession session,
const XrEyeTrackerCreateInfoANDROID* createInfo,
XrEyeTrackerANDROID* eyeTracker);
أوصاف المَعلمات
-
sessionهو معرِّف XrSession الذي سيتم تفعيل تتبُّع العين فيه. -
createInfoهي السمة XrEyeTrackerCreateInfoANDROID المستخدَمة لتحديد تتبُّع العين. -
eyeTrackerهو مؤشر XrEyeTrackerANDROID الذي تم عرضه.
ينشئ التطبيق مؤشر XrEyeTrackerANDROID باستخدام دالة xrCreateEyeTrackerANDROID.
إذا كان النظام لا يتيح تتبُّع العين، يجب أن يعرض وقت التشغيل XR_ERROR_FEATURE_UNSUPPORTED من xrCreateEyeTrackerANDROID .
الاستخدام الصالح (ضمني)
- يجب تفعيل الإضافة
XR_ANDROID_eye_trackingقبل استدعاء xrCreateEyeTrackerANDROID - يجب أن يكون
sessionاسم معرِّف XrSession صالحًا -
createInfoيجب أن يكون مؤشرًا إلى بنية XrEyeTrackerCreateInfoANDROID صالحة - يجب أن يكون
eyeTrackerمؤشرًا إلى اسم معرِّف XrEyeTrackerANDROID
رموز الإرجاع
XR_SUCCESSXR_SESSION_LOSS_PENDING
XR_ERROR_FEATURE_UNSUPPORTEDXR_ERROR_FUNCTION_UNSUPPORTEDXR_ERROR_HANDLE_INVALIDXR_ERROR_INSTANCE_LOSTXR_ERROR_LIMIT_REACHEDXR_ERROR_OUT_OF_MEMORYXR_ERROR_RUNTIME_FAILUREXR_ERROR_SESSION_LOSTXR_ERROR_VALIDATION_FAILURE
يتم تحديد بنية XrEyeTrackerCreateInfoANDROID على النحو التالي:
typedef struct XrEyeTrackerCreateInfoANDROID {
XrStructureType type;
const void* next;
} XrEyeTrackerCreateInfoANDROID;
أوصاف الأعضاء
-
typeهو XrStructureType لهذه البنية. -
nextهوNULLأو مؤشر إلى البنية التالية في سلسلة البنى. لا يتم تحديد مثل هذه البُنى في OpenXR الأساسية أو هذه الإضافة.
تصف بنية XrEyeTrackerCreateInfoANDROID المعلومات اللازمة لإنشاء مؤشر XrEyeTrackerANDROID.
الاستخدام الصالح (ضمني)
- يجب تفعيل إضافة
XR_ANDROID_eye_trackingقبل استخدام XrEyeTrackerCreateInfoANDROID - يجب أن يكون
typeXR_TYPE_EYE_TRACKER_CREATE_INFO_ANDROID -
nextيجب أن تكونNULLأو مؤشرًا صالحًا إلى البنية التالية في سلسلة البنية
يتم تعريف الدالة xrDestroyEyeTrackerANDROID على النحو التالي:
XrResult xrDestroyEyeTrackerANDROID(
XrEyeTrackerANDROID eyeTracker);
أوصاف المَعلمات
-
eyeTrackerهو XrEyeTrackerANDROID تم إنشاؤه سابقًا بواسطة xrCreateEyeTrackerANDROID .
تُحرّر دالة xrDestroyEyeTrackerANDROID المكوّن eyeTracker والموارد الأساسية عند الانتهاء من تجارب تتبُّع العين.
الاستخدام الصالح (ضمني)
- يجب تفعيل الإضافة
XR_ANDROID_eye_trackingقبل استدعاء xrDestroyEyeTrackerANDROID -
eyeTrackerيجب أن يكون مؤشرًا صالحًا لـ XrEyeTrackerANDROID
أمان Thread
- يجب مزامنة الوصول إلى
eyeTrackerوأي معرّفات فرعية خارجيًا
رموز الإرجاع
XR_SUCCESS
XR_ERROR_FUNCTION_UNSUPPORTEDXR_ERROR_HANDLE_INVALIDXR_ERROR_RUNTIME_FAILURE
جارٍ الحصول على معلومات عن العينَين
يتم تعريف الدالة xrGetCoarseTrackingEyesInfoANDROID على النحو التالي:
XrResult xrGetCoarseTrackingEyesInfoANDROID(
XrEyeTrackerANDROID eyeTracker,
const XrEyesGetInfoANDROID* getInfo,
XrEyesANDROID* eyesOutput);
أوصاف المَعلمات
-
eyeTrackerهو XrEyeTrackerANDROID تم إنشاؤه سابقًا بواسطة xrCreateEyeTrackerANDROID . -
getInfoهو مؤشر إلى XrEyesGetInfoANDROID يُستخدَم لتوفير معلومات عن طلبات البحث عن أوضاع العين وحالاتها. -
eyesOutputهو مؤشر إلى XrEyesANDROID يحتوي على معلومات العينَين التي تم عرضها، بما في ذلك الوضعيات والحالات.
تحصل الدالة xrGetCoarseTrackingEyesInfoANDROID على معلومات عن حالات العين ووضعياتها بطريقة تحافظ على خصوصية المستخدم.
يجب أن تعرض بيئة التشغيل القيمة XR_ERROR_PERMISSION_INSUFFICIENT إذا لم يكن التطبيق يملك الإذن android.permission.EYE_TRACKING_COARSE.
يتم التعبير عن وضعيات العين في XrEyesGetInfoANDROID :: baseSpace في XrEyesGetInfoANDROID :: time .
في أي وقت، يتم تتبُّع موضع واتجاه وضعية العين أو لا يتم تتبُّعهما. وهذا يعني أنّ وقت التشغيل يجب أن يضبط كلاً من XR_SPACE_LOCATION_POSITION_TRACKED_BIT وXR_SPACE_LOCATION_ORIENTATION_TRACKED_BIT أو يمحو كلاً من XR_SPACE_LOCATION_POSITION_TRACKED_BIT وXR_SPACE_LOCATION_ORIENTATION_TRACKED_BIT في XrEyesANDROID :: eyes المقدَّم، ويضبط XrEyesANDROID :: mode للإشارة إلى حالات التتبُّع.
الاستخدام الصالح (ضمني)
- يجب تفعيل الإضافة
XR_ANDROID_eye_trackingقبل استدعاء xrGetCoarseTrackingEyesInfoANDROID -
eyeTrackerيجب أن يكون مؤشرًا صالحًا لـ XrEyeTrackerANDROID -
getInfoيجب أن يكون مؤشرًا إلى بنية XrEyesGetInfoANDROID صالحة -
eyesOutputيجب أن يكون مؤشرًا إلى بنية XrEyesANDROID
رموز الإرجاع
XR_SUCCESSXR_SESSION_LOSS_PENDING
XR_ERROR_FUNCTION_UNSUPPORTEDXR_ERROR_HANDLE_INVALIDXR_ERROR_INSTANCE_LOSTXR_ERROR_LIMIT_REACHEDXR_ERROR_OUT_OF_MEMORYXR_ERROR_PERMISSION_INSUFFICIENTXR_ERROR_RUNTIME_FAILUREXR_ERROR_SESSION_LOSTXR_ERROR_TIME_INVALIDXR_ERROR_VALIDATION_FAILURE
يتم تعريف الدالة xrGetFineTrackingEyesInfoANDROID على النحو التالي:
XrResult xrGetFineTrackingEyesInfoANDROID(
XrEyeTrackerANDROID eyeTracker,
const XrEyesGetInfoANDROID* getInfo,
XrEyesANDROID* eyesOutput);
أوصاف المَعلمات
-
eyeTrackerهو XrEyeTrackerANDROID تم إنشاؤه سابقًا بواسطة xrCreateEyeTrackerANDROID . -
getInfoهو مؤشر إلى XrEyesGetInfoANDROID يُستخدَم لتحديد الناتج المطلوب. -
eyesOutputهو مؤشر إلى XrEyesANDROID يحتوي على معلومات العينَين التي تم عرضها، بما في ذلك الوضعيات والحالات.
تحصل الدالة xrGetFineTrackingEyesInfoANDROID على معلومات عن حالات العين ووضعياتها بدقة أعلى من xrGetCoarseTrackingEyesInfoANDROID .
يجب أن يعرض وقت التشغيل القيمة XR_ERROR_PERMISSION_INSUFFICIENT إذا لم يكن التطبيق يملك الإذن android.permission.EYE_TRACKING_FINE.
يتم تحليل معلومات العينين وتكون مرتبطة بالمساحة الأساسية في وقت طلب xrGetFineTrackingEyesInfoANDROID باستخدام XrEyesGetInfoANDROID :: time وXrEyesGetInfoANDROID :: baseSpace . يجب أن يحلّ وقت التشغيل الموقع الجغرافي المحدّد من خلال XrEyesGetInfoANDROID :: baseSpace في وقت المكالمة.
في أي وقت، يتم تتبُّع موضع واتجاه وضعية العين أو لا يتم تتبُّعهما. وهذا يعني أنّ وقت التشغيل يجب أن يضبط كلاً من XR_SPACE_LOCATION_POSITION_TRACKED_BIT وXR_SPACE_LOCATION_ORIENTATION_TRACKED_BIT أو يمحو كلاً من XR_SPACE_LOCATION_POSITION_TRACKED_BIT وXR_SPACE_LOCATION_ORIENTATION_TRACKED_BIT في XrEyesANDROID :: eyes المقدَّم، ويضبط XrEyesANDROID :: mode للإشارة إلى حالات التتبُّع.
الاستخدام الصالح (ضمني)
- يجب تفعيل الإضافة
XR_ANDROID_eye_trackingقبل استدعاء xrGetFineTrackingEyesInfoANDROID -
eyeTrackerيجب أن يكون مؤشرًا صالحًا لـ XrEyeTrackerANDROID -
getInfoيجب أن يكون مؤشرًا إلى بنية XrEyesGetInfoANDROID صالحة -
eyesOutputيجب أن يكون مؤشرًا إلى بنية XrEyesANDROID
رموز الإرجاع
XR_SUCCESSXR_SESSION_LOSS_PENDING
XR_ERROR_FUNCTION_UNSUPPORTEDXR_ERROR_HANDLE_INVALIDXR_ERROR_INSTANCE_LOSTXR_ERROR_LIMIT_REACHEDXR_ERROR_OUT_OF_MEMORYXR_ERROR_PERMISSION_INSUFFICIENTXR_ERROR_RUNTIME_FAILUREXR_ERROR_SESSION_LOSTXR_ERROR_TIME_INVALIDXR_ERROR_VALIDATION_FAILURE
تحتوي بنية XrEyesGetInfoANDROID على المعلومات المطلوبة لاسترداد أوضاع العين وحالاتها.
typedef struct XrEyesGetInfoANDROID {
XrStructureType type;
const void* next;
XrTime time;
XrSpace baseSpace;
} XrEyesGetInfoANDROID;
أوصاف الأعضاء
-
typeهو XrStructureType لهذه البنية. -
nextهوNULLأو مؤشر إلى البنية التالية في سلسلة البنى. لا يتم تحديد مثل هذه البُنى في OpenXR الأساسية أو هذه الإضافة. -
timeهيXrTimeالتي يتم تقييم الإحداثيات عندها بالنسبة إلىbaseSpace. -
baseSpaceهو XrSpace الذي يتم فيه عرض وضعيات العين.
الاستخدام الصالح (ضمني)
- يجب تفعيل الإضافة
XR_ANDROID_eye_trackingقبل استخدام XrEyesGetInfoANDROID - يجب أن يكون
typeXR_TYPE_EYES_GET_INFO_ANDROID -
nextيجب أن تكونNULLأو مؤشرًا صالحًا إلى البنية التالية في سلسلة البنية - يجب أن يكون
baseSpaceاسم معرِّف صالحًا على XrSpace
تحتوي بنية XrEyesANDROID على معلومات حول العينَين اللتين يتم تتبُّعهما.
typedef struct XrEyesANDROID {
XrStructureType type;
void* next;
XrEyeANDROID eyes[XR_EYE_MAX_ANDROID];
XrEyeTrackingModeANDROID mode;
} XrEyesANDROID;
أوصاف الأعضاء
-
typeهو XrStructureType لهذه البنية. -
nextهوNULLأو مؤشر إلى البنية التالية في سلسلة البنى. لا يتم تحديد مثل هذه البُنى في OpenXR الأساسية أو هذه الإضافة. -
eyesهي مصفوفة من XrEyeANDROID بحجمXR_EYE_MAX_ANDROIDللعينَين اليسرى واليمنى كما تتم فهرستها بواسطة XrEyeIndexANDROID . -
modeهو XrEyeTrackingModeANDROID الذي يشير إلى العينَين اللتين يتم تتبّعهما حاليًا.
الاستخدام الصالح (ضمني)
- يجب تفعيل إضافة
XR_ANDROID_eye_trackingقبل استخدام XrEyesANDROID - يجب أن يكون
typeXR_TYPE_EYES_ANDROID -
nextيجب أن تكونNULLأو مؤشرًا صالحًا إلى البنية التالية في سلسلة البنية - يجب أن يكون أي عنصر محدّد في
eyesبنية XrEyeANDROID صالحة -
modeيجب أن تكون قيمة XrEyeTrackingModeANDROID صالحة
تصف بنية XrEyeANDROID حالة العين وموضعها واتجاهها.
typedef struct XrEyeANDROID {
XrEyeStateANDROID eyeState;
XrPosef eyePose;
} XrEyeANDROID;
أوصاف الأعضاء
-
eyeStateهي حالة XrEyeStateANDROID للعين. -
eyePoseهو XrPosef يحدّد موضع بؤبؤ العين واتجاهه ضمن الإطار المرجعي لـ XrEyesGetInfoANDROID ::baseSpaceالمقابل. يمثّل اتجاه الهوية هنا محاور إحداثيات مع +Z في عيني المستخدم، و+X إلى اليمين و+Y إلى الأعلى.
الاستخدام الصالح (ضمني)
- يجب تفعيل الإضافة
XR_ANDROID_eye_trackingقبل استخدام XrEyeANDROID - يجب أن تكون قيمة
eyeStateصالحة لـ XrEyeStateANDROID
يحدّد تعداد XrEyeStateANDROID الحالات المختلفة للعينَين اللتين يتم تتبُّعهما.
typedef enum XrEyeStateANDROID {
XR_EYE_STATE_INVALID_ANDROID = 0,
XR_EYE_STATE_GAZING_ANDROID = 1,
XR_EYE_STATE_SHUT_ANDROID = 2,
XR_EYE_STATE_MAX_ENUM_ANDROID = 0x7FFFFFFF
} XrEyeStateANDROID;
تحمل التعدادات المعاني التالية:
وصف التعداد
XR_EYE_STATE_INVALID_ANDROID
يشير إلى أنّ العين في حالة خطأ أو غير موجودة.
XR_EYE_STATE_GAZING_ANDROID
يشير إلى أنّ العين تنظر حاليًا.
XR_EYE_STATE_SHUT_ANDROID
يشير ذلك إلى أنّ العين مغلقة حاليًا بسبب غمزة أو رمشة.
يحدّد تعداد XrEyeIndexANDROID فهرس العين اليمنى أو اليسرى.
typedef enum XrEyeIndexANDROID {
XR_EYE_INDEX_LEFT_ANDROID = 0,
XR_EYE_INDEX_RIGHT_ANDROID = 1,
XR_EYE_INDEX_MAX_ENUM_ANDROID = 0x7FFFFFFF
} XrEyeIndexANDROID;
تحمل التعدادات المعاني التالية:
وصف التعداد
XR_EYE_INDEX_LEFT_ANDROID
العين اليسرى
XR_EYE_INDEX_RIGHT_ANDROID
العين اليمنى
يحدّد التعداد XrEyeTrackingModeANDROID الحالة المختلفة للعينَين اللتين يتم تتبّعهما.
typedef enum XrEyeTrackingModeANDROID {
XR_EYE_TRACKING_MODE_NOT_TRACKING_ANDROID = 0,
XR_EYE_TRACKING_MODE_RIGHT_ANDROID = 1,
XR_EYE_TRACKING_MODE_LEFT_ANDROID = 2,
XR_EYE_TRACKING_MODE_BOTH_ANDROID = 3,
XR_EYE_TRACKING_MODE_MAX_ENUM_ANDROID = 0x7FFFFFFF
} XrEyeTrackingModeANDROID;
تحمل التعدادات المعاني التالية:
وصف التعداد
XR_EYE_TRACKING_MODE_NOT_TRACKING_ANDROID
يشير هذا الرمز إلى أنّ ميزة "تتبُّع العين" غير مفعَّلة حاليًا.
XR_EYE_TRACKING_MODE_RIGHT_ANDROID
يشير هذا الرمز إلى أنّه يتم تتبُّع العين اليمنى فقط.
XR_EYE_TRACKING_MODE_LEFT_ANDROID
يشير إلى أنّ العين اليسرى فقط هي التي يتم تتبُّعها.
XR_EYE_TRACKING_MODE_BOTH_ANDROID
يشير إلى أنّ كلاً من العينين اليسرى واليمنى تتبعان.
#define XR_EYE_MAX_ANDROID 2
XR_EYE_MAX_ANDROID هو الحدّ الأقصى لعدد العيون التي يتم تسجيل بيانات XrEyeANDROID لها.
مثال على رمز لتتبُّع العين
يوضّح الرمز البرمجي في المثال التالي كيفية الحصول على معلومات العينين بالنسبة إلى مساحة العرض.
XrSession session; // previously initialized, e.g. created at app startup.
XrSpace viewSpace; // space created for XR_REFERENCE_SPACE_TYPE_VIEW.
// The function pointers are previously initialized using xrGetInstanceProcAddr.
PFN_xrCreateEyeTrackerANDROID xrCreateEyeTrackerANDROID; // previously initialized
PFN_xrDestroyEyeTrackerANDROID xrDestroyEyeTrackerANDROID; // previously initialized
PFN_xrGetCoarseTrackingEyesInfoANDROID xrGetCoarseTrackingEyesInfoANDROID; // previously initialized
PFN_xrGetFineTrackingEyesInfoANDROID xrGetFineTrackingEyesInfoANDROID; // previously initialized
// This will use the XrSession that is bound to the eye tracker done at time of creation.
XrEyeTrackerANDROID eyeTracker;
XrEyeTrackerCreateInfoANDROID createInfo{
.type = XR_TYPE_EYE_TRACKER_CREATE_INFO_ANDROID,
.next = nullptr};
CHK_XR(xrCreateEyeTrackerANDROID(session, &createInfo, &eyeTracker));
while (1) {
// ...
// For every frame in frame loop
// ...
XrFrameState frameState; // previously returned from xrWaitFrame
const XrTime time = frameState.predictedDisplayTime;
XrEyesANDROID fineEyesInfo{.type = XR_TYPE_EYES_ANDROID,
.next = nullptr,
.mode = XR_EYE_TRACKING_MODE_BOTH_ANDROID};
XrEyesANDROID coarseEyesInfo{.type = XR_TYPE_EYES_ANDROID,
.next = nullptr,
.mode = XR_EYE_TRACKING_MODE_BOTH_ANDROID};
XrEyesGetInfoANDROID eyesGetInfo{.type = XR_TYPE_EYES_GET_INFO_ANDROID,
.next = nullptr,
.time = time,
.baseSpace = viewSpace};
CHK_XR(xrGetCoarseTrackingEyesInfoANDROID(eyeTracker, &eyesGetInfo, &coarseEyesInfo));
CHK_XR(xrGetFineTrackingEyesInfoANDROID(eyeTracker, &eyesGetInfo, &fineEyesInfo));
// eyes tracking information is now available:
// drawLeftEye(eyesInfo.eyes[XR_EYE_INDEX_LEFT_ANDROID].eyePose);
// drawRightEye(eyesInfo.eyes[XR_EYE_INDEX_RIGHT_ANDROID].eyePose);
// ...
// Finish frame loop
// ...
}
// after usage
CHK_XR(xrDestroyEyeTrackerANDROID(eyeTracker));
أنواع العناصر الجديدة
الأوامر الجديدة
- xrCreateEyeTrackerANDROID
- xrDestroyEyeTrackerANDROID
- xrGetCoarseTrackingEyesInfoANDROID
- xrGetFineTrackingEyesInfoANDROID
منشآت جديدة
- XrEyeANDROID
- XrEyeTrackerCreateInfoANDROID
- XrEyesANDROID
- XrEyesGetInfoANDROID
توسيع XrSystemProperties :
عمليات تعداد جديدة
ثوابت تعداد جديدة
XR_ANDROID_EYE_TRACKING_EXTENSION_NAMEXR_ANDROID_eye_tracking_SPEC_VERSIONXR_EYE_MAX_ANDROIDتوسيع XrObjectType :
XR_OBJECT_TYPE_EYE_TRACKER_ANDROID
توسيع XrStructureType :
XR_TYPE_EYES_ANDROIDXR_TYPE_EYES_GET_INFO_ANDROIDXR_TYPE_EYE_TRACKER_CREATE_INFO_ANDROIDXR_TYPE_SYSTEM_EYE_TRACKING_PROPERTIES_ANDROID
المشاكل
سجلّ الإصدارات
المراجعة 1، 17-01-2025 (كيني فيركايمر)
- الوصف الأولي للإضافة