Chacmool: الواقع المعزّز في Chrome Canary

Chris Wilson
Chris Wilson

أثناء التحضير لحضور مؤتمر Google I/O، أردنا تسليط الضوء على إمكانيات استخدام الواقع المعزّز المشوّقة على الويب. Chacmool هو ملف برمجي توضيحي لتجربة تعليمية على الويب أنشأناه لإظهار مدى سهولة استخدام الواقع المعزّز المستنِد إلى الويب لمساعدة المستخدمين في التفاعل مع تجارب الواقع المعزّز. توفّر شبكة الإنترنت تجارب الواقع المعزّز بسهولة ويسر في كل مكان.

لقد فعّلنا الآن هذا العرض التجريبي على Chrome Canary على أجهزة Android المتوافقة مع ARCore التي تعمل بالإصدار O من Android أو الإصدارات الأحدث. ستحتاج أيضًا إلى تثبيت ARCore. يعتمد هذا العمل على اقتراح جديد لـ WebXR‏ (WebXR Hit Test API)، لذلك تم وضع علامة عليه ومن المخطّط أن يبقى في الإصدار Canary بينما نختبر ونُحسّن المقترح الجديد لواجهة برمجة التطبيقات مع أعضاء آخرين في مجموعة منتدى الويب الشامل. في الواقع، للوصول إلى الإصدار التجريبي، عليك تفعيل علامتَين في chrome://flags: #webxr و#webxr-hit-test. بعد تفعيل هذين الخيارَين وإعادة تشغيل Chrome Canary، يمكنك الاطّلاع على الإصدار التجريبي من Chacmool.

يمكنك متابعته.

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

تم إنشاء هذا العرض التوضيحي على مدار شهر تقريبًا، مع الاستفادة من بعض المكوّنات من العرض التوضيحي الأول لواقع افتراضي متعدّد الوسائط على الويب الذي أعدّه فريق WebXR، وهو WebAR-Article. تم الحصول على معلومات عن التمثال من صفحته على Google للفنون والثقافة ، وقدّم شريك "Google للفنون والثقافة"، وهو شركة CyArk، النموذج الثلاثي الأبعاد. لتجهيز النموذج الثلاثي الأبعاد للعرض على الويب، تم استخدام Meshlab وMesh Mixer لإصلاح النموذج وإزالة شبكة النموذج لتقليل حجم الملف. بعد ذلك، تم استخدام مكتبة Draco لضغط و فك ضغط الشبكات الهندسية الثلاثية الأبعاد وسحابات النقاط ، وذلك لتقليل حجم ملف التصميم من 44.3 ميغابايت إلى 225 كيلوبايت فقط. أخيرًا، يتم استخدام Web Worker لتحميل النموذج في سلسلة رسائل في الخلفية حتى تظل الصفحة تفاعلية أثناء تحميل النموذج و إزالة ضغطه، وهي عملية قد تؤدي عادةً إلى حدوث تقطُّع في الأداء وتمنع التمرير في الصفحة.

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

أفضل الممارسات لتجارب الواقع المعزّز/الواقع الافتراضي

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

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

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

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

إذا كنت مهتمًا بتطوير تجارب الواقع المعزّز المستندة إلى الويب، لدينا مشاركة شقيقة هنا تقدّم المزيد من التفاصيل حول كيفية بدء استخدام ميزة إنشاء الواقع المعزّز على الويب بنفسك. (يمكنك أيضًا الاطّلاع على مصدر الإصدار التمهيدي لسمة Chacmool). نحن نعمل حاليًا على تطوير WebXR Device API ونريد معرفة ملاحظاتك بشأنها لنضمن أنّها تتيح جميع أنواع التطبيقات وحالات الاستخدام، لذا يُرجى الانتقال إلى GitHub والانضمام إلى المحادثة.