تمثل هذه الفئة تجريدًا لواجهة برمجة تطبيقات WebXR Device وتستخدم داخليًا بواسطة [page:WebGLRenderer]. [name] يوفر أيضًا واجهة عامة الذي يسمح للمستخدمين بتمكين / تعطيل XR وتنفيذ مهام ذات صلة بـ XR مثل استرداد التحكُّمات على سبيل المثال.
ما إذا كان يجب تحديث كاميرا XR الخاصة بالمدير تلقائيًا أم لا. الافتراضي هو `true`.
هذا العلم يخطر المقدم بأن يكون جاهزًا للتصوير XR. الافتراضي هو `false`. قم بتعيينه على `true` إذا كنت ستستخدم XR في تطبيقك.
ما إذا كان التقديم XR نشطًا أم لا. الافتراضي هو `false`. هذا العلم هو للقراءة فقط وتعيينه تلقائيًا بواسطة [name].
يرجع نسخة من [page:ArrayCamera] التي تمثل كاميرا XR لجلسة XR النشطة. لكل عرض يحتفظ بكائن كاميرا منفصل في خصائص [page:ArrayCamera.cameras cameras].
حاليًا لا يتم استخدام `fov` الكاميرا ولا يعكس fov من كاميرا XR. إذا كنت بحاجة إلى fov على مستوى التطبيق ، فعليك حسابه بشكل يدوي من مصفوفات الإسقاط الخاصة بكاميرا XR.
[page:Integer index] — فهرس المتحكم.
يعود بـ [page:Group] يمثل ما يسمى بمساحة *الشعاع المستهدف* من
المتحكم XR. استخدم هذه المساحة لتصور الكائنات ثلاثية الأبعاد التي تدعم
المستخدم في مهام الإشارة مثل التفاعل مع واجهة المستخدم.
[page:Integer index] — فهرس المتحكم.
يعود بـ [page:Group] يمثل ما يسمى بمساحة `القبضة` من المتحكم XR
. استخدم هذه المساحة إذا كان المستخدم سيحمل كائنات ثلاثية الأبعاد أخرى
مثل سيف الضوء.
ملاحظة: إذا كنت ترغب في إظهار شيء في يد المستخدم وتقديم شعاع الإشارة في نفس الوقت ، فسترغب في إرفاق الكائن المحمول باليد إلى المجموعة التي يتم إرجاعها بواسطة [page:.getControllerGrip]() والشعاع إلى المجموعة التي يتم إرجاعها بواسطة [page:.getController](). الفكرة هي أن يكون لديك اثنان مجموعات مختلفة في مسافتين إحداثيتين مختلفتين لنفس WebXR التحكم.
يعود بكمية الفوفيشن المستخدمة من قبل ملحق XR لـ طبقة الإسقاط.
[page:Integer index] — فهرس المتحكم.
يعود بـ [page:Group] يمثل ما يسمى بـ `hand` أو `joint` space
التحكم XR. استخدام هذه المساحة لتصور أيدي المستخدم عند عدم استخدام
التحكُّمات الفعلية.
يرجع المسافة المرجعية.
يرجع كائن `XRSession` الذي يسمح بإدارة أكثر دقة لجلسات WebXR النشطة على مستوى التطبيق.
[page:Float foveation] — الفوفيشن المراد تعيينه.
يحدد مقدار الفوفيشن المستخدم من قبل ملحق XR للطبقة.
يجب أن يكون قيمة بين `0` و `1`.
[page:Float framebufferScaleFactor] — عامل مقياس الإطار المراد تعيينه.
يحدد عامل التحجيم المستخدم عند تحديد حجم الإطار عند التصوير إلى جهاز XR. القيمة نسبية إلى
دقة عرض جهاز XR الافتراضية. الافتراضي هو `1`. قيمة `0.5`
تحدد إطارًا بنسبة 50٪ من دقة العرض الأصلية.
ملاحظة: لا يمكن تغيير عامل مقياس الإطار أثناء تقديم محتوى XR.
[page:XRReferenceSpace referenceSpace] — مساحة مرجعية مخصصة.
يمكن استخدامه لتكوين مساحة مرجعية مخصصة تستبدل
المساحة المرجعية الافتراضية.
[page:String referenceSpaceType] — نوع المساحة المرجعية المراد تعيينه.
يمكن استخدامه لتكوين علاقة فضائية مع
بيئة المستخدم الفعلية. اعتمادًا على كيفية حركة المستخدم في الفضاء ثلاثي الأبعاد ، يمكن أن يؤدي تعيين
مساحة مرجعية مناسبة إلى تحسين التتبع. الافتراضي هو
`local-floor`. يرجى التحقق من
[link:https://developer.mozilla.org/en-US/docs/Web/API/XRReferenceSpaceType MDN]
للحصول على قائمة بالقيم الممكنة وحالات استخدامها.
تحديث حالة كاميرا XR. استخدم هذه الطريقة على مستوى التطبيق إذا ضبط [page:.cameraAutoUpdate] إلى `false`. تتطلب الطريقة كاميرا غير XR المشهد كمعلم. يتم ضبط تحولات الكاميرا التي تم تمريرها تلقائيًا إلى موضع كاميرا XR عند استدعاء هذه الطريقة.
ملاحظة: لا يمكن تغيير نوع المساحة المرجعية أثناء تقديم محتوى XR.
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]