تطبيقات الويب التقدّمية (PWA) على Oculus Quest 2

‫Oculus Quest 2 هي سماعة رأس مزوّدة بتقنية الواقع الافتراضي (VR) من إنتاج شركة Oculus، وهي إحدى أقسام شركة Meta. يمكن للمطوّرين الآن إنشاء تطبيقات ويب تقدّمية (PWA) ثنائية وثلاثية الأبعاد وتوزيعها للاستفادة من ميزة تعدد المهام في Oculus Quest 2.

‫Oculus Quest 2

Oculus Quest 2 هي سماعة رأس مزوّدة بتقنية الواقع الافتراضي (VR) من إنشاء Oculus، وهي إحدى أقسام شركة Meta. وهي خليفة سماعة الرأس السابقة من الشركة، Oculus Quest. يمكن للجهاز العمل كسماعة رأس مستقلة مزوّدة بنظام تشغيل داخلي يستند إلى Android، كما يمكنه العمل مع برامج الواقع الافتراضي المتوافقة مع Oculus التي يتم تشغيلها على كمبيوتر مكتبي عند توصيله عبر USB أو Wi-Fi. يستخدم الجهاز نظام Snapdragon XR2 من Qualcomm على شريحة مع ذاكرة وصول عشوائي بسعة 6 غيغابايت. تتميز شاشة Quest 2 بلوحة LCD واحدة سريعة التبديل بدقة 1,832 × 1,920 بكسل لكل عين، وتعمل بمعدل إعادة تحميل يصل إلى 120 هرتز.

جهاز Oculus Quest 2 مع وحدات التحكّم

متصفّح Oculus

تتوفّر حاليًا ثلاثة متصفّحات على Oculus Quest 2: Wolvic، وهو إصدار أحدث من Firefox Reality، و متصفّح Oculus المضمّن. وتركز هذه المقالة على النوع الثاني. يعرّف موقع Oculus الإلكتروني متصفّح Oculus على النحو التالي.

يتوافق متصفّح Oculus مع أحدث معايير الويب والتقنيات الأخرى لمساعدتك في إنشاء تجارب واقع افتراضي على الويب. تعمل مواقع الويب ثنائية الأبعاد الحالية بشكل رائع في متصفح Oculus لأنّه يستند إلى محرّك عرض Chromium. تم تحسينه بشكل أكبر ليناسب سماعات رأس Oculus من أجل الحصول على أفضل أداء ولتمكين مطوّري الويب من الاستفادة من الإمكانات الكاملة للواقع الافتراضي باستخدام واجهات برمجة تطبيقات جديدة، مثل WebXR. من خلال WebXR، نفتح الأبواب أمام الجيل التالي من الويب".

متصفّح Oculus مع فتح ثلاث نوافذ متصفّح

وكيل المستخدم

في ما يلي سلسلة وكيل المستخدم للمتصفّح في وقت كتابة هذا المستند.

Mozilla/5.0 (X11; Linux x86_64; Quest 2)
AppleWebKit/537.36 (KHTML, like Gecko)
OculusBrowser/18.1.0.2.46.337441587
SamsungBrowser/4.0
Chrome/95.0.4638.74
VR
Safari/537.36

كما تلاحظ، يستند الإصدار الحالي 18.1.0.2.46.337441587 من Oculus Browser إلى Chrome 95.0.4638.74، وهو إصدار واحد فقط أقدم من الإصدار الثابت الحالي من Chrome، وهو 96.0.4664.110. إذا بدّل المستخدم إلى وضع الأجهزة الجوّالة، سيتغيّر الرمز VR إلى Mobile VR.

صفحة "لمحة عن" في Oculus Browser

واجهة المستخدم

تتضمّن واجهة مستخدم المتصفّح (الموضّحة أعلاه) الميزات التالية (الصف العلوي من اليمين إلى اليسار):

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

يتضمّن الصف السفلي الميزات التالية:

  • زر الإغلاق
  • زر التصغير
  • زر النقاط الثلاث مع خيارات الرجوع والتقديم وإعادة التحميل

معدّل التحديث ونسبة وحدات البكسل على الجهاز

في Oculus Quest 2، يعرض متصفّح Oculus Browser محتوى صفحات الويب ثنائية الأبعاد وWebXR بمعدل تحديث يبلغ 90 هرتز. عند مشاهدة وسائط بملء الشاشة، يحسّن متصفّح Oculus معدّل تحديث الجهاز استنادًا إلى معدّل عرض اللقطات في الفيديو، مثلاً 24 لقطة في الثانية. تبلغ نسبة عرض البكسل إلى ارتفاعه في Oculus Quest 2‏ 1.5، ما يتيح عرض النصوص بوضوح.

تطبيقات الويب التقدّمية في متصفّح Oculus وOculus Store

في 28 تشرين الأول (أكتوبر) 2021، أعلن جاكوب روسي، رئيس إدارة المنتجات في Meta (Oculus)، عن أنّ تطبيقات الويب التقدّمية ستتوفّر على Oculus Quest وOculus Quest 2. في ما يلي، سأشرح تجربة استخدام تطبيقات الويب التقدّمية على Oculus، وأوضّح كيفية إنشاء تطبيقات الويب التقدّمية وتثبيتها بشكل جانبي واختبارها على Oculus Quest 2.

المشاركة مع الولاية

تتم مشاركة حالة تسجيل الدخول بين متصفّح Oculus وتطبيقات الويب التقدّمية، ما يتيح للمستخدمين التبديل بسلاسة بينهما. وبالطبع، تتوافق ميزة "تسجيل الدخول باستخدام Facebook" مع هذه المنصة بشكل تلقائي. يتضمّن متصفّح Oculus Browser أداة لإدارة كلمات المرور تتيح للمستخدمين تخزين كلمات المرور ومشاركتها بأمان بين المتصفّح وتجارب التطبيقات المثبَّتة.

أحجام نوافذ تطبيقات الويب التقدّمية

يمكن للمستخدم تغيير حجم نوافذ المتصفّح ونوافذ تطبيقات الويب التقدّمية المثبَّتة بحرية. يمكن أن يتراوح الارتفاع بين 625 بكسل و1,200 بكسل. يمكن ضبط العرض بين 400 بكسل و2,000 بكسل. الأبعاد التلقائية هي 1,000 × 625 بكسل.

التفاعل مع تطبيقات الويب التقدّمية

يمكن التحكّم في تطبيقات الويب التقدّمية باستخدام وحدتَي التحكّم اليمنى واليسرى من Oculus، والماوس ولوحات المفاتيح التي تعمل بتقنية البلوتوث، ومن خلال ميزة تتبُّع حركة اليد. يمكنك التمرير باستخدام عصا الإبهام على وحدات تحكّم Oculus، أو من خلال الضغط بإصبعَي الإبهام والسبابة معًا والتحرّك في الاتجاه المطلوب. لاختيار عنصر، يمكن للمستخدم الإشارة إليه والضغط عليه بإصبعين.

أذونات تطبيقات الويب التقدّمية

تعمل الأذونات في Oculus Browser بالطريقة نفسها تقريبًا كما في Chrome. تتم مشاركة الحالة بين التطبيقات التي تعمل في المتصفّح وتطبيقات الويب التقدّمية المثبَّتة، ما يتيح للمستخدمين التبديل بين التجربتين بدون الحاجة إلى منح الأذونات نفسها مرة أخرى.

على الرغم من تنفيذ العديد من الأذونات، لا تتوفّر جميع الميزات. على سبيل المثال، على الرغم من نجاح طلب إذن تحديد الموقع الجغرافي، لا يحصل الجهاز على موقع جغرافي مطلقًا. وبالمثل، فإنّ جميع واجهات برمجة التطبيقات للأجهزة، مثل WebHID وWeb Bluetooth وغيرها، تجتاز عملية رصد الميزات، ولكنّها لا تعرض في الواقع أداة اختيار تتيح للمستخدم إقران Oculus بجهاز. أعتقد أنّه سيتم تحسين إمكانية رصد الميزات في واجهات برمجة التطبيقات بعد أن يصبح المتصفّح أكثر تطورًا.

الأذونات في Oculus Browser

تصحيح أخطاء تطبيقات الويب التقدّمية من خلال "أدوات مطوّري البرامج في Chrome"

بعد تفعيل "وضع المطوّرين"، يمكن تصحيح أخطاء تطبيقات الويب التقدّمية على جهاز Oculus Quest 2 تمامًا كما هو موضّح في تصحيح أخطاء أجهزة Android عن بُعد.

  1. على جهاز Oculus، انتقِل إلى الموقع الإلكتروني المطلوب في متصفّح Oculus.
  2. افتح Google Chrome على جهاز الكمبيوتر وانتقِل إلى chrome://inspect/#devices.
  3. ابحث عن جهاز Oculus المعنيّ، وسيتبعه مجموعة من علامات تبويب متصفّح Oculus المفتوحة حاليًا على الجهاز.
  4. انقر على فحص في علامة التبويب المطلوبة في Oculus Browser.

فحص تطبيق يعمل على Oculus Quest 2 باستخدام "أدوات مطوّري البرامج في Chrome"

اكتشاف التطبيقات

يمكن للمستخدمين استخدام المتصفّح نفسه أو متجر Oculus لاكتشاف تطبيقات الويب التقدّمية. وكما هو الحال مع أي متصفح آخر، تعمل تطبيقات الويب التقدّمية المثبّتة أيضًا في Oculus Browser كمواقع إلكترونية يتم تشغيلها في علامة تبويب. عندما يزور المستخدم موقعًا إلكترونيًا، سيساعده متصفّح Oculus في العثور على التطبيق إذا كان متاحًا في متجر Oculus (وفقط إذا كان متاحًا). بالنسبة إلى المستخدمين الذين سبق لهم تثبيت التطبيق، سيساعدهم متصفّح Oculus في التبديل بسهولة إلى التطبيق إذا أرادوا ذلك.

متصفّح Oculus يدعو المستخدم في رسالة إلى تثبيت تطبيق MyEmail.

أمثلة على تطبيقات ويب تقدّمية على جهاز Oculus Quest 2

تطبيقات الويب التقدّمية من Meta

أنشأت عدّة أقسام في Meta تطبيقات ويب تقدّمية لجهاز Oculus Quest 2، مثل Instagram و Facebook. تعمل تطبيقات الويب التقدّمية هذه في نوافذ تطبيقات مستقلة لا تتضمّن شريط عناوين URL ويمكن تغيير حجمها بحرية.

تطبيق Facebook Oculus Quest 2

تطبيق Instagram على جهاز Oculus Quest 2

تطبيقات الويب التقدّمية التي يطوّرها مطوّرون آخرون

في وقت كتابة هذا المقال، يتوفّر عدد صغير ولكن متزايد من تطبيقات الويب التقدّمية على Oculus Quest 2 في متجر Oculus. يتيح تطبيق Spike للمستخدمين تجربة جميع أدوات العمل الأساسية، مثل البريد الإلكتروني والمحادثة والمكالمات والملاحظات والمهام وقوائم المهام، من صندوق الوارد الخاص بهم في مركز بيئة افتراضية مباشرةً في تطبيق Spike.

تطبيق Spike Oculus Quest 2

مثال آخر هو Smartsheet، وهي مساحة عمل ديناميكية توفّر إدارة المشاريع وسير العمل المبرمَج وإنشاء حلول جديدة بسرعة.

سيتم طرح المزيد من تطبيقات الويب التقدّمية، مثل Slack وDropbox وCanva، كما تم الإعلان عن ذلك في فيديو يظهر فيه Jacob Rossi وتم نشره في سياق مؤتمر Connect الذي أقامته Facebook في عام 2021.

إنشاء تطبيقات ويب تقدّمية لجهاز Oculus

حدّدت Meta الخطوات المطلوبة في مستنداتها. بشكل عام، من المفترض أن تعمل تطبيقات الويب التقدّمية التي يمكن تثبيتها في Chrome على Oculus بدون أي مشاكل.

متطلبات بيان تطبيق الويب

هناك بعض الاختلافات المهمة مقارنةً بمعايير إمكانية التثبيت في Chrome ومواصفات ملف بيان تطبيق الويب. على سبيل المثال، لا يتيح Oculus حاليًا سوى اللغات التي تُكتب من اليمين إلى اليسار، بينما لا تفرض مواصفات ملف بيان تطبيق الويب أي قيود من هذا النوع. مثال آخر هو start_url، وهو شرط أساسي في Chrome لكي يكون التطبيق قابلاً للتثبيت، ولكنّه اختياري على Oculus. توفّر Oculus أداة سطر أوامر تتيح للمطوّرين إنشاء تطبيقات ويب تقدّمية لجهاز Oculus Quest 2، ما يتيح لهم تمرير المَعلمات الناقصة (أو تجاوز المَعلمات الحالية) في ملف Web App Manifest.

الاسم الوصف
name (مطلوب) اسم تطبيق الويب التقدّمي. في الوقت الحالي، لا يتيح Oculus سوى اللغات المكتوبة من اليمين إلى اليسار للاسم.
display (مطلوب) إما "standalone" أو "minimal-ui" لا يتيح Oculus حاليًا استخدام أي قيم أخرى.
short_name (مطلوب) نسخة أقصر من اسم التطبيق، إذا لزم الأمر.
scope (اختياري) عنوان URL أو المسارات التي يجب اعتبارها جزءًا من التطبيق
start_url (اختياري) عنوان URL الذي سيتم عرضه عند تشغيل التطبيق.

تتضمّن Oculus عددًا من حقول بيان تطبيق الويب الخاصة الاختيارية التي يمكن استخدامها لتخصيص تجربة تطبيق الويب التقدّمي.

الاسم الوصف
ovr_package_name (اختياري) يضبط اسم حزمة APK التي تم إنشاؤها لتطبيق الويب التقدّمي. يجب أن يكون هذا التنسيق هو تنسيق اسم النطاق العكسي، مثلاً: "com.company.app.pwa". في حال عدم ضبطها، على المطوّرين تقديم اسم حزمة إلى أداة سطر الأوامر باستخدام المَعلمة --package-name (المطلوبة آنذاك).
ovr_multi_tab_enabled (اختياري) في حال ضبط القيمة على true، سيوفّر هذا الحقل المنطقي شريط علامات تبويب لتطبيق الويب التقدّمي (PWA) مشابهًا لشريط علامات التبويب في متصفّح Oculus. في تطبيقات الويب التقدّمية التي تتضمّن علامات تبويب متعددة، سيتم فتح الروابط الداخلية التي تستهدف علامة تبويب جديدة (target="_new" أو target="_blank") في علامات تبويب جديدة ضمن نافذة تطبيق الويب التقدّمي. ويختلف ذلك عن تطبيقات الويب التقدّمية ذات علامة التبويب الواحدة التي تفتح فيها هذه الروابط في نافذة Oculus Browser. يتم حاليًا توحيد هذه الميزة تحت اسم وضع التطبيق ذي علامات التبويب.
ovr_scope_extensions (اختياري) يسمح لتطبيق ويب تقدّمي بتضمين المزيد من صفحات الويب ضمن نطاق تطبيق الويب. يتألف من قاموس JSON يحتوي على عناوين URL للإضافات أو أنماط أحرف البدل. يتم حاليًا توحيد هذه الميزة تحت اسم إضافات النطاق لتطبيقات الويب.

تغليف تطبيقات الويب التقدّمية باستخدام واجهة سطر الأوامر Bubblewrap

Bubblewrap هي مجموعة مفتوحة المصدر من المكتبات وأداة سطر أوامر (CLI) لنظام Node.js. طوّر فريق Google Chrome أداة Bubblewrap لمساعدة المطوّرين في إنشاء وتصميم وتوقيع مشروع Android يطلق تطبيق الويب التقدّمي كتطبيق نشاط ويب موثوق (TWA).

لا يتوافق متصفّح Meta Quest حاليًا مع تطبيقات الويب الموثوقة بالكامل، ولكن اعتبارًا من الإصدار 1.18.0، يتيح Bubblewrap إنشاء حِزم لتطبيقات الويب التقدّمية على أجهزة Meta Quest.

يمكنه إنشاء ملفات APK عالمية تفتح تطبيق ويب متوافقًا مع الأجهزة العادية على أجهزة Android وMeta Quest Browser على أجهزة Meta Quest.

بافتراض أنّك ثبّت Node.js، يمكن تثبيت واجهة سطر الأوامر Bubblewrap باستخدام الأمر التالي:

npm i -g @bubblewrap/cli

عند تشغيل Bubblewrap لأول مرة، سيُطلب منك تنزيل وتثبيت التبعيات الخارجية المطلوبة تلقائيًا، وهي Java Development Kit (JDK) وAndroid SDK Build Tools.

لإنشاء مشروع Android متوافق مع Meta Quest يغلّف تطبيق الويب التقدّمي، شغِّل الأمر init مع العلامة --metaquest واتّبِع التعليمات في المعالج:

bubblewrap init --manifest="https://your.web.app/manifest.json" --metaquest

بعد إنشاء المشروع، أنشئ حزمة APK ووقِّعها من خلال تنفيذ الأمر التالي:

bubblewrap build

سيؤدي ذلك إلى إنشاء ملف باسم app-release-signed.apk. يمكن تثبيت هذا الملف على الجهاز أو نشره على Meta Quest Store أو "متجر Google Play" أو أي من منصات توزيع تطبيقات Android الأخرى.

تغليف تطبيقات الويب التقدّمية باستخدام أداة Oculus Platform

Oculus Platform Utility هي أداة سطر الأوامر الرسمية التي طوّرتها Meta لنشر التطبيقات على أجهزة Oculus Rift وMeta Quest.

ويتيح أيضًا إنشاء حِزم لتطبيقات الويب التقدّمية لأجهزة Meta Quest باستخدام الأمر create-pwa ونشرها على Meta Quest Store وApp Lab.

اضبط اسم ملف الإخراج من خلال المَعلمة -o ومسار حزمة تطوير البرامج (SDK) لنظام التشغيل Android من خلال المَعلمة --android-sdk.

وجِّه الأداة إلى عنوان URL المباشر لبيان تطبيق الويب من خلال المَعلمة --web-manifest-url.

إذا لم يكن لديك بيان على تطبيق الويب التقدّمي المباشر أو أردت تجاهل البيان المباشر، سيظل بإمكانك إنشاء حزمة APK لتطبيق الويب التقدّمي باستخدام ملف بيان محلي والمعلَمة --manifest-content-file.

للحفاظ على البيان بأكبر قدر ممكن من البساطة، استخدِم المَعلمة --package-name مع قيمة بتنسيق اسم النطاق المعكوس (على سبيل المثال، com.company.app.pwa)، بدلاً من إضافة الحقل ovr_package_name الخاص إلى البيان.

ovr-platform-util create-pwa -o output.apk --android-sdk ~/bin/android-10 --manifest-content-file manifest.json --package-name com.company.app.pwa

تجميع تطبيقات الويب التقدّمية باستخدام PWABuilder

يرى المؤلّفون أنّ استخدام PWABuilder هو أسهل طريقة وأكثرها موصى بها لتغليف تطبيقات الويب التقدّمية على Meta Quest في الوقت الحالي.

‫PWABuilder هو مشروع مفتوح المصدر طوّرته شركة Microsoft، ويتيح للمطوّرين إنشاء حِزم لتطبيقات الويب التقدّمية وتوقيعها لنشرها في متاجر مختلفة، بما في ذلك Microsoft Store و"متجر Google Play" وApp Store وMeta Quest Store.

لا يتطلّب إنشاء حِزم لتطبيقات الويب التقدّمية باستخدام PWABuilder سوى إدخال عنوان URL لتطبيق ويب تقدّمي، وإدخال البيانات الوصفية للتطبيق أو تعديلها، والنقر على الزر إنشاء.

يمنح PWABuilder المطوّرين خيار تحديد الأداة التي يريدون استخدامها لتغليف تطبيقات الويب التقدّمية لأجهزة Meta Quest.

يمكنك اختيار خيار Meta Quest لاستخدام أداة Oculus Platform Utility.

خيارات التغليف في PWABuilder

يمكنك اختيار Android لاستخدام Bubblewrap، ثم وضع علامة في مربّع الاختيار متوافق مع Meta Quest.

تغليف تطبيقات الويب التقدّمية باستخدام PWABuilder من خلال Bubblewrap

تثبيت تطبيقات الويب التقدّمية (PWA) باستخدام أداة ADB

بعد إنشاء ملف APK، يمكنك تحميله على جهاز Meta Quest من مصدر خارجي باستخدام أداة تصحيح الأخطاء في Android (ADB) عبر USB أو Wi-Fi:

adb install app-release-signed.apk

إذا كنت تستخدم واجهة سطر الأوامر Bubblewrap لتغليف تطبيقات الويب التقدّمية، ستوفّر لك أمرًا مناسبًا للاسم المستعار من أجل التثبيت الجانبي لملف APK:

bubblewrap install

تظهر التطبيقات التي تم تحميلها جانبًا في قسم مصادر غير معروفة في درج التطبيقات.

إرسال التطبيق

يمكنك الاطّلاع على تفاصيل حول تحميل تطبيقات الويب التقدّمية وإرسالها إلى Oculus Store في مستندات مركز مطوّري Oculus.

بالإضافة إلى إرسال التطبيقات إلى Oculus Store، يمكن للمطوّرين أيضًا توزيع تطبيقاتهم عبر منصات مثل SideQuest مباشرةً إلى المستهلكين بأمان وبشكل آمن، بدون الحاجة إلى موافقة المتجر. ويتيح ذلك للمطوّرين إتاحة تطبيق للمستخدمين النهائيين مباشرةً، حتى إذا كان في مراحل التطوير الأولى أو تجريبيًا أو يستهدف شريحة فريدة من الجمهور.

اختبار التطبيقات التي تتيح استخدام علامات تبويب متعددة

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

ovr-platform-util create-pwa -o test.apk --android-skd ~/bin/android-10 --web-manifest-url https://tomayac.github.io/oculus-pwa-test/manifest.json --package-name com.example.pwa
adb install test.apk

إليك فيديو مسجّل للشاشة يعرض التطبيق التجريبي.

إصدار Oculus من SVGcode

لتجربة التعليمات، أنشأتُ إصدارًا من أحدث تطبيقات الويب التقدّمية SVGcode متوافقًا مع Oculus. يمكنك تنزيل ملف APK الناتج output.apk من Google Drive. إذا أردت التحقيق في الحزمة بشكل أكبر، يتوفّر لديّ أيضًا إصدار تم تفكيكه. يمكنك العثور على تعليمات الإنشاء في package.json.

لا توجد أي مشاكل في استخدام التطبيق على Oculus، بما في ذلك إمكانية فتح الملفات وحفظها. لا يتوافق متصفّح Oculus Browser مع File System Access API، ولكن يمكن الاستفادة من طريقة التوافق. الشيء الوحيد الذي لم يعمل هو تكبير/تصغير الشاشة باستخدام إصبعين. كنت أتوقع أن تعمل هذه الميزة من خلال الضغط على زر التشغيل في كلتا وحدتَي التحكّم ثم تحريكهما في اتجاهين متعاكسين. عدا ذلك، كان كل شيء يعمل بشكل جيد وسريع الاستجابة، كما يمكنك أن ترى في الفيديو المضمّن.

تطبيقات WebXR ثلاثية الأبعاد الغامرة

لا يقتصر توافق تطبيقات الويب التقدّمية على Oculus Quest على التطبيقات الثنائية الأبعاد. يمكن للمطوّرين إنشاء تجارب ثلاثية الأبعاد غامرة للواقع الافتراضي باستخدام WebXR API.

هل يمكن التعامل مع الطلبات المختلفة (تثبيت تطبيقات الويب التقدّمية، وطلبات الأذونات، والإشعارات) من داخل الواقع الافتراضي؟

في ما يلي تسجيل شاشة لاختبار طلبات وكيل المستخدم من فريق عمل الويب التفاعلي ضمن اختبارات WebXR.

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

تتبُّع اليد

يمكنك استخدام يديك للتفاعل مع تطبيقات الويب التقدّمية في الوضع الغامر بفضل WebXR Hand Input API و نظام تتبُّع اليد المستند إلى الذكاء الاصطناعي من Meta.

في ما يلي لقطة شاشة من نموذج تتبُّع حركة اليد من نماذج WebXR التابعة لفريق عمل Immersive Web.

الواقع المعزّز/المختلط (Passthrough)

كما أعلنّا في مؤتمر Meta Connect 2022، أضفنا ميزة الواقع المعزّز (AR) في WebXR، المعروفة أيضًا باسم "الواقع المختلط" (MR)، على أجهزة Meta Quest 2 وMeta Quest Pro.

لنلقِ نظرة على مثال أولي معدَّل قليلاً من A-Frame يتضمّن نماذج مصغّرة وسماء وطائرة مخفية للواقع المعزّز.

A-Frame هو إطار عمل مفتوح المصدر على الويب لإنشاء تجارب ثلاثية الأبعاد/واقع افتراضي/واقع معزّز، وذلك بالكامل من خلال عناصر HTML مخصّصة قابلة لإعادة الاستخدام وسهلة القراءة والفهم والنسخ واللصق.

في ما يلي تسجيل شاشة لهذا العرض التوضيحي على جهاز Meta Quest 2.

يحتوي جهاز Meta Quest 2 على كاميرات أحادية اللون، لذا تكون ميزة "الواقع المختلط" بدرجات الرمادي، بينما يحتوي جهاز Meta Quest Pro على كاميرات ملونة.

الاستنتاجات

تُعدّ تطبيقات الويب التقدّمية على Oculus Quest 2 ممتعة جدًا ومبشّرة. تتيح هذه اللوحة الافتراضية التي لا تنتهي للمستخدمين تغيير حجم الشاشة بما يتناسب مع المهمة الحالية، وهي تحمل الكثير من الإمكانات التي قد تغيّر طريقة عملنا في المستقبل. لا تزال ميزة الكتابة في الواقع الافتراضي باستخدام تتبُّع اليد في مراحلها الأولى، ولا تعمل بشكل موثوق جدًا حتى الآن، على الأقل بالنسبة إليّ، ولكنّها تتيح إدخال عناوين URL أو كتابة نصوص قصيرة.

أكثر ما يعجبني في تطبيقات الويب التقدّمية على Oculus Quest 2 هو أنّها مجرد تطبيقات ويب تقدّمية عادية يمكن استخدامها بدون تغيير في علامة تبويب المتصفّح أو من خلال برنامج تضمين APK بسيط بدون أي واجهات برمجة تطبيقات خاصة بالمنصة. لم يكن استهداف منصات متعددة باستخدام الرمز نفسه أسهل من ذلك. نحن متحمّسون لتوفير تطبيقات الويب التقدّمية في تجارب الواقع الافتراضي والواقع المعزّز على الويب. المستقبل مشرق!

الإقرارات

صورة Oculus Quest 2 من Maximilian Prandstätter على Flickr صور من "متجر Oculus" لتطبيقات Instagram وFacebook ومتصفّح Oculus وSpike، بالإضافة إلى رسم توضيحي لإمكانية العثور على التطبيقات ورسوم متحركة لتتبُّع حركة اليد مقدمة من Meta. الصورة الرئيسية من تصميم "أرناو مارين إي بويغ". راجع هذه المشاركة Joe Medley.