Quickstart: إنشاء تطبيق HoloLens باستخدام Azure Object Anchors، في Unity باستخدام MRTK

في هذا التشغيل السريع، ستقوم بإنشاء تطبيق Unity HoloLens يستخدم Azure Object Anchors. Azure Object Anchors هي خدمة سحابية مُدارة تقوم بتحويل الأصول ثلاثية الأبعاد إلى نماذج ذكاء اصطناعي تتيح تجارب الواقع المختلط المدركة للكائنات لـ HoloLens. عند الانتهاء، سيكون لديك تطبيق HoloLens مصمم باستخدام Unity والذي يمكنه اكتشاف الأشياء في العالم المادي.

ستتعلم كيفية:

  • قم بإعداد إعدادات بناء Unity .
  • تصدير مشروع HoloLens Visual Studio.
  • نشر التطبيق وتشغيله على جهاز HoloLens 2.

المتطلبات الأساسية

لإكمال هذا التشغيل السريع، تأكد من أن لديك:

  • كائن فعلي في البيئة الخاصة بك ونموذجه ثلاثي الأبعاد (إما CAD أو ممسوح ضوئيًّا).
  • جهاز Windows مثبت عليه ما يلي:
  • جهاز HoloLens 2 محدث وبه وضع المطوّر ممكّن.
    • للتحديث إلى أحدث إصدار من HoloLens، افتح الإعدادات الخاصة بالتطبيق، وانتقل إلى التحديث والأمان ، ثم حدد تأكد من التحديثات.

إنشاء حساب Object Anchors

أولاً، تحتاج إلى إنشاء حساب مع خدمة Object Anchors.

  1. انتقل إلى مدخل Azure، وحدد Create a resource.

    Create a new resource

  2. ابحث عن مورد Object Anchors.

    ابحث عن Object Anchors.

    Select the Object Anchors Resource

    في مورد Object Anchors في نتائج البحث، حدد Create -> Object Anchors.

    Create an Object Anchors Resource

  3. في مربع الحوار Object Anchors Account:

    • أدخل اسم المورد الفريد.
    • حدد الاشتراك الذي تريد إرفاق المورد به.
    • أنشئ أو استخدم مجموعة موارد موجودة.
    • حدد المنطقة التي تريد أن يتواجد فيها المورد.

    Enter Object Anchors resource account details

    حدد Create لبدء إنشاء المورد.

  4. بمجرد إنشاء المورد، حدد Go to resource.

    Go to resource

  5. في صفحة النظرة العامة:

    ضع في اعتبارك Account Domain. سوف تحتاجها لاحقًا.

    Copy the account domain for your Object Anchors resource

    ضع في اعتبارك Account ID. سوف تحتاجها لاحقًا.

    Copy the account ID for your Object Anchors resource

    انتقل إلى صفحة Access Keys، ودوِّن Primary key. سوف تحتاجها لاحقًا.

    Copy the account key for your Object Anchors resource

إعداد جهازك

لنشر التطبيقات على HoloLens، ستحتاج إلى توصيل HoloLens بالكمبيوتر.

  1. في HoloLens، انتقل إلى الإعدادات -> التحديث والأمان -> للمطورين.
  2. انقر فوق اتصال، واترك الشاشة مفتوحة حتى إدخال رقم التعريف الشخصي في Visual Studio خلال إجراء عملية النشر الأولى.

قم بتحميل النموذج الخاص بك

قبل تشغيل التطبيق، ستحتاج إلى إتاحة نماذجك للتطبيق. إذا لم يكن لديك بالفعل نموذج Object Anchors، فاتبع الإرشادات الواردة في إنشاء نموذج لإنشاء نموذج. ثم، قم بالعودة هنا.

مع تشغيل HoloLens وتوصيله بجهاز التطوير (الكمبيوتر)، اتبع الخطوات التالية لتحميل نموذج إلى مجلد الكائنات ثلاثية الأبعاد على HoloLens:

  1. حدد النماذج التي تريد العمل بها وانسخها بالضغط على مفتاح Ctrl وC، معًا (Ctrl + C).

  2. اضغط على مفتاح شعار Windows وE معًا (Win + E) لتشغيل مستكشف الملفات. يجب أن ترى HoloLens الخاص بك مدرجًا مع محركات الأقراص والمجلدات الأخرى في الجزء الأيسر.

    file explorer

  3. انقر على رابط HoloLens لإظهار سعة التخزين على جهاز HoloLens في الجزء الأيمن.

    open HoloLens internal storage

  4. في مستكشف الملفات، انتقل إلى الكائنات ثلاثية الأبعاد للتخزين > الداخلي. الآن، يمكنك لصق النماذج الخاصة بك في مجلد الكائنات ثلاثية الأبعاد عن طريق الضغط على مفتاح Ctrl وV معا (Ctrl + V).

    paste models in 3D Objects folder

فتح نموذج المشروع

نسخ مستودع العينات بتشغيل الأوامر التالية:

git clone https://github.com/Azure/azure-object-anchors.git

cd ./azure-object-anchors

الخطوة التالية هي تنزيل حزم "Azure Object Anchors" للوحدة.

حدد موقع حزمة "Azure Object Anchors" للوحدة (com.microsoft.azure.object-anchors.runtime) هنا. حدد الإصدار الذي تريده وقم بتنزيل الحزمة باستخدام الزر تنزيل.

في Unity، افتح quickstarts/apps/unity/mrtk المشروع.

اتبع الإرشادات الواردة هنا لاستيراد حزمة Azure Object Anchors التي قمت بتنزيلها في مشروع Unity باستخدام مدير الحِزم Unity Package Manager.

تكوين معلومات الحساب

الخطوة التالية هي تكوين التطبيق لاستخدام معلومات حسابك. لقد لاحظت قيم مفتاح الحساب ومعرف الحساب ونطاق الحساب، في قسم "Create an Object Anchors account".

في جزء المشروع، انتقل إلى Assets\AzureObjectAnchors.SDK\Resources.

حدد ObjectAnchorsConfig. في جزء Inspector، أدخل Account Key القيمة لـ Object Anchors Account Key، وأيضًا Account ID القيمة لـ Object Anchors Account Id، وأخيرًا Account Domain القيمة لـ Object Anchors Account Domain.

إنشاء وتشغيل التطبيق

إنشاء نموذج التعليمات البرمجية.

في محرر الوحدة، انتقل إلى الأصول/MixedReality.AzureObjectAnchors/Scenes، وافتح AOASampleScene، وأضفه إلى قائمة إنشاء المشهد.

عندما يطالبك مربع حوار "TMP Importer" باستيراد موارد TextMesh Pro، حدد "Import TMP Essentials" للقيام بذلك. Import TextMesh Pro resources

حدد ملف -> إنشاء الإعدادات. حدد "Universal Windows Platform" ثم حدد "Switch Platform". إذا ظهرت رسالة من Unity Editor تُفيد بأنك بحاجة إلى تنزيل بعض المكونات أولاً، فقم بتنزيلها وتثبيتها. اتبع لقطة الشاشة التالية لتكوين إعدادات البناء. تأكد من أن AOASampleScene فقطلديه علامة اختيار بجواره: لا ينبغي تضمين جميع المشاهد الأخرى.

build settings

حدد "Build" ثم حدد مجلد إخراج. يمكنك الآن إنشاء مشروع VS في مجلد الإخراج.

إنشاء التطبيقات ونشرها

افتح الملف الذي .sln تم إنشاؤه بواسطة Unity. قم بتغيير تكوين البناء إلى ما يلي.

build configuration

بعد ذلك، ستحتاج إلى تكوين عنوان IP للجهاز البعيد لنشر التطبيق وتصحيحه.

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

remote debug

أغلق صفحة الخاصية. انقر فوق Remote Machine. يجب أن يبدأ التطبيق في الإنشاء والنشر على جهازك البعيد. تأكد من أن جهازك نشط.

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

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

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

يمكنك أيضا القيام بإجراءات أخرى باستخدام قائمة اليد.

القائمة الأساسية
  • بدء البحث / إيقاف البحث - بدء عملية الكشف عن الكائنات أو إيقافها.

  • تبديل التعيين المكاني - إظهار/إخفاء عرض التعيين المكاني. يمكن استخدام هذا الخيار لتصحيح الأخطاء إذا اكتمل الفحص أم لا.

  • الإعدادات Tracker – تبديل تنشيط قائمة إعدادات التعقب.

  • الإعدادات منطقة البحث – تبديل تنشيط قائمة إعدادات منطقة البحث.

  • بدء التتبع - التقاط بيانات التشخيص وحفظها على الجهاز. راجع المزيد من التفاصيل في قسم تصحيح مشكلات الكشف والتقاط التشخيص.

  • تحميل التتبع - تحميل بيانات التشخيص إلى خدمة Object Anchors.

    Unity primary hand menu

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

  • محاذاة عمودية مريحة – عند تمكينها، تسمح باكتشاف كائن بزاوية غير عمودية. مفيد لاكتشاف العناصر على المنحدرات.

  • السماح بتغيير المقياس - يسمح للمتعقب بتغيير حجم الكائن المكتشف استنادا إلى المعلومات البيئية.

  • شريط تمرير نسبة التغطية – يضبط نسبة نقاط السطح التي يجب أن تتطابق مع المتعقب للكشف عن كائن. تسمح القيم المنخفضة للمتعقب باكتشاف العناصر التي يصعب على مستشعرات HoloLens اكتشافها بشكل أفضل، مثل العناصر المظلمة أو العناصر شديدة الانعكاس. القيم الأعلى ستقلل من تكرار الاكتشافات الخطأ.

    Unity tracker hand menu

قائمة إعدادات منطقة البحث
  • تأمين منطقة البحث - مربع إحاطة منطقة التأمين لمنع الحركة العرضية بواسطة اليدين.

  • الضبط التلقائي لمنطقة البحث - يسمح لمنطقة البحث بتغيير موضعها أثناء الكشف عن الكائنات.

  • Cycle Mesh – يتنقل من خلال تصور الشبكات المحملة داخل منطقة البحث. يمكن أن يساعد هذا الخيار المستخدمين في محاذاة مربع البحث لعناصر يصعب اكتشافها.

    Unity search area hand menu

استكشاف الأخطاء وإصلاحها

تلميحات

إذا لم يتم الكشف عن الكائن، يمكنك تجربة الخطوات التالية:

  1. تحقق مرة أخرى من أنك تستخدم النموذج الصحيح للكائن.
  2. عرض منطقة البحث والتأكد من أنها تغطي الكائن الهدف.
  3. حاول تقليل MinSurfaceCoverage .
  4. في مدخل جهاز Windows، انقر فوق طرق العرض -> طرق العرض ثلاثية الأبعاد، وتحقق مما إذا كان الفحص قد اكتمل.

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