التعمق يزيد من الواقعية

أدلة خاصة بالمنصة

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

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

حالات استخدام تطوير التطبيقات باستخدام Depth API

يمكن أن تتيح Depth API إخفاء الأجسام، وتحسين مستوى الانغماس، والتفاعلات الجديدة التي تعزّز واقعية تجارب الواقع المعزّز. في ما يلي بعض الطرق التي يمكنك استخدامها في مشاريعك الخاصة. للاطّلاع على أمثلة على استخدام ميزة "العمق"، يمكنك استكشاف المشاهد النموذجية في مختبر العمق في ARCore الذي يوضّح الطرق المختلفة للوصول إلى بيانات العمق. تطبيق Unity هذا هو تطبيق مفتوح المصدر على Github.

تفعيل ميزة إيقاف تحميل المحتوى في نوافذ المتصفّح عندما تخت

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

تحويل مشهد

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

المسافة وعمق الحقل

هل تريد الإشارة إلى أنّ شيئًا ما بعيد؟ يمكنك استخدام ميزة قياس المسافة وإضافة تأثيرات عمق المجال، مثل تمويه خلفية أو مقدّمة مشهد، باستخدام Depth API.

تفعيل تفاعلات المستخدمين مع عناصر الواقع المعزّز

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

تحسين اختبارات الضغط

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

في المثال التالي، تمثّل شخصيات Andy الخضراء عمليات اختبار إصابة عادية على مستوى الطائرة، بينما تمثّل شخصيات Andy الحمراء عمليات اختبار إصابة على مستوى العمق.

توافق الجهاز

لا تتوافق Depth API إلا مع الأجهزة التي تتضمّن قدرة معالجة تتيح رصد العمق، ويجب تفعيلها يدويًا في ARCore، كما هو موضّح في تفعيل العمق.

قد توفّر بعض الأجهزة أيضًا أداة استشعار للعمق على مستوى الأجهزة، مثل أداة استشعار وقت الرحلة (ToF). يُرجى الرجوع إلى صفحة الأجهزة المتوافقة مع ARCore للاطّلاع على قائمة حديثة بالأجهزة المتوافقة مع Depth API وقائمة بالأجهزة التي تتضمّن مستشعر عمق متوافقًا، مثل مستشعر ToF.

صور العمق

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

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

العمق من الحركة

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

الحصول على صور العمق

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

الخطوات التالية

  • يمكنك الاطّلاع على مختبر عمق ARCore الذي يوضّح الطرق المختلفة للوصول إلى بيانات العمق.