التشغيل السريع: تحويل النموذج للعرض

في التشغيل السريع: تقديم نموذج باستخدام Unity، تعلمت كيفية استخدام مشروع نموذج Unity لتقديم نموذج مضمن.

يوضح هذا الدليل كيفية تحويل نماذجك الخاصة، مما يستلزم الخطوات التالية:

  • إعداد حسابAzure blob storage للإدخال والإخراج
  • تحميل نموذج ثلاثي الأبعاد وتحويله للاستخدام مع Azure Remote Rendering
  • إدراج النموذج ثلاثي الأبعاد المحول في تطبيق للعرض

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

نظرة عامة

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

تحتاج:

  • اشتراك Azure
  • حساب "StorageV2" في اشتراكك
  • حاوية تخزين الكائن الثنائي كبير الحجم لنموذج الإدخال الخاص بك
  • حاوية تخزين الكائن الثنائي كبير الحجم لبيانات الإخراج
  • نموذج للتحويل، انظر نماذج العينة
    • الاطلاع على قائمة تنسيقات المصدر المعتمدة
    • لاستخدام نموذج برنامج تحويل البرنامج النصي، تأكد من إعداد مجلد إدخال يحتوي على النموذج وجميع التبعيات الخارجية (مثل المواد الخارجية أو الهندسية)

إعداد Azure

إذا لم يكن لديك حساب بعد، فانتقل إلى بدء استخدام Azure، وحدد خيار الحساب المجاني، واتبع الإرشادات.

بمجرد أن يكون لديك حساب Azure، سجل الدخول إلى مدخل Microsoft Azure.

إنشاء حساب تخزين

لإنشاء تخزين blob، تحتاج أولاً إلى حساب تخزين.

  1. لإنشاء مورد، حدد "إنشاء مورد":

Azure - إضافة مورد

  1. من الشاشة الجديدة، اختر التخزين على الجانب الأيسر ثم حساب التخزين - الكائن الثنائي كبير الحجم والملف والجدول وقائمة الانتظار من العمود التالي:

Azure - إضافة سعة تخزين

  1. يؤدي النقر فوق هذا الزر إلى إظهار الشاشة التالية مع خصائص التخزين لملئها:

إعداد Azure

  1. املأ النموذج بالطريقة التالية:
  • أنشئ مجموعة موارد جديدة من الرابط أسفل المربع المنسدل وسميهARR_Tutorial
  • فيما يتعلق باسم حساب التخزين، أدخل اسماً فريدا هنا. يجب أن يكون هذا الاسم فريدا عالميا. تظهر رسالة خطأ إذا تم أخذ الاسم بالفعل. في نطاق هذا التشغيل السريع، ستقوم بتسميته arrtutorialstorage. بناءً على ذلك، تحتاج إلى استبداله باسمك لأي حدث في هذا التشغيل السريع.
  • حدد منطقة قريبة منك. من الناحية المثالية، استخدم نفس المنطقة المستخدمة لإعداد العرض في التشغيل السريع الآخر.
  • تم تعيين الأداء إلى "Premium". يعمل "قياسي" أيضا، ولكن له خصائص وقت تحميل أقل عند تحميل نموذج.
  • تم تعيين نوع الحساب المتميز إلى "حظر الكائنات الثنائية كبيرة الحجم"
  • تم تعيين التكرار إلى "التخزين المتكرر للمنطقة (ZRS)"
  1. لا يجب تغيير أي من الخصائص في علامات التبويب الأخرى، بحيث يمكنك المتابعة مع "مراجعة + إنشاء" ثم اتبع الخطوات لإكمال الإعداد.

  2. يُبلغك الموقع الآن عن التقدم المحرز في النشر الخاص بك وتقارير "النشر الخاص بك كاملة" مؤخراً. حدد "Go to resource" للخطوات التالية:

اكتمال إنشاءAzure Storage

إنشاء تخزين الكائن الثنائي كبير الحجم

بعد ذلك، نحن بحاجة إلى اثنين من حاويات الكائن الثنائي كبير الحجم، واحدة للإدخال وواحدة للإخراج.

  1. من الزر "Go to resource" ، يمكنك الوصول إلى صفحة تحتوي على لوحة على اليسار تحتوي على قائمة قائمة. في تلك القائمة ضمن فئة "Blob service" ، حدد "Containers":

Azure - إضافة حاويات

  1. اضغط على زر "+ حاوية" لإنشاء حاوية تخزين إدخال الكائن الثنائي كبير الحجم. استخدم الإعدادات التالية عند إنشائها:
  • الاسم = arrinput
  • مستوى وصول عام = خاص
  1. بعد إنشاء الحاوية، حدد + Container مرة أخرى وكرر هذه الإعدادات لحاوية الإخراج :
  • الاسم = arroutput
  • مستوى وصول عام = خاص

يجب أن يكون لديك الآن حاويتين تخزين الكائن الثنائي كبير الحجم:

إعداد تخزين Blob

تشغيل التحويل

هناك ثلاث طرق متميزة لبدء تحويل نموذج:

1. التحويل عبر أداة ARRT

هناك أداة مستندة إلى واجهة المستخدم تسمى ARRT لبدء التحويلات والتفاعل مع النتيجة المعروضة.

2. التحويل عبر برنامج نصي PowerShell

لتسهيل الاتصال بخدمة تحويل الأصول، نوفر لك برنامج نصي للمرفق. إنه موجود في مجلد البرامج النصية ويسمى Conversion.ps1.

على وجه الخصوص، هذا البرنامج النصي

  • تحميل جميع الملفات في دليل معين من القرص المحلي إلى حاوية تخزين الإدخال،
  • استدعاء واجهة برمجة تطبيقات REST لتحويل الأصول
    • تسترد واجهة برمجة التطبيقات هذه البيانات من حاوية تخزين الإدخال، وتبدأ التحويل وتعيد معرف التحويل،
  • يستقصي واجهة برمجة تطبيقات حالة التحويل مع معرف التحويل المسترد حتى تنتهي عملية التحويل بنجاح أو فشل،
  • استرداد ارتباط إلى الأصل المحول في تخزين الإخراج.

يقرأ البرنامج النصي التكوين الخاص به من الملف على Scripts\arrconfig.js. افتح ملف JSON في محرر نص.

{
    "accountSettings": {
        "arrAccountId": "8*******-****-****-****-*********d7e",
        "arrAccountKey": "R***************************************l04=",
        "arrAccountDomain": "<select from available regions: australiaeast, eastus, eastus2, japaneast, northeurope, southcentralus, southeastasia, uksouth, westeurope, westus2 or specify the full url>"
    },
    "renderingSessionSettings": {
        "remoteRenderingDomain": "<select from available regions: australiaeast, eastus, eastus2, japaneast, northeurope, southcentralus, southeastasia, uksouth, westeurope, westus2 or specify the full url>"
    },
    "assetConversionSettings": {
        "localAssetDirectoryPath": "D:\\tmp\\robot",
        "resourceGroup": "ARR_Tutorial",
        "storageAccountName": "arrexamplestorage",
        "blobInputContainerName": "arrinput",
        "inputFolderPath": "robotConversion",
        "inputAssetPath": "robot.fbx",
        "blobOutputContainerName": "arroutput",
        "outputFolderPath":"converted/robot",
        "outputAssetFileName": "robot.arrAsset"
    }
}

يجب ملء التكوين داخل مجموعة accountSettings (معرف الحساب والمفتاح والمجال) بشكل مشابه لبيانات الاعتماد في تشغيل سريع ل Render a model with Unity.

يمكن رؤية تكوين كامل لمجموعة renderingSessionSettings (المجال وvmSize وmaxLeaseTime) في البرامج النصية ل PowerShell Example. لا يعد vmSize وmaxLeaseTime مهمين للتحويل ويمكن حذفهما، حيث لا يؤثران على التحويل.

داخل مجموعة assetConversionSettings ، تأكد من تغيير resourceGroupوblobInputContainerNameوblobOutputContainerName. يجب استبدال قيمة arrtutorialstorage بالاسم الفريد الذي اخترته أثناء إنشاء حساب التخزين.

تغيير localAssetDirectoryPath للإشارة إلى الدليل على القرص الذي يحتوي على النموذج الذي تنوي تحويله. كن حذرا من الهروب بشكل صحيح من المائلات المائلة للخلف ("\") في المسار باستخدام خط مائل مزدوج ("\\").

تقوم الخدمة بتحميل جميع البيانات من المسار المحدد في localAssetDirectoryPath إلى حاوية blobInputContainerName blob ضمن مسار فرعي تم منحه بواسطة inputFolderPath. مع تكوين المثال، تحمل الخدمة محتوى الدليل "D:\tmp\robot" إلى حاوية الكائن الثنائي كبير الحجم "arrinput" لحساب التخزين "arrtutorialstorage" تحت المسار "robotConversion". تتم الكتابة فوق الملفات الموجودة بالفعل.

تغيير inputAssetPath إلى مسار النموذج لتحويل - المسار إلى localAssetDirectoryPath. استخدم "/" بدلا من "\" كفاصل المسار. لذلك بالنسبة لملف "robot.fbx"، الموجود مباشرة في "D:\tmp\robot"، استخدم "robot.fbx".

بمجرد تحويل النموذج، تتم كتابته مرة أخرى إلى حاوية التخزين التي قدمها blobOutputContainerName. يمكن تحديد مسار فرعي عن طريق توفير outputFolderPathاختياري . في المثال، تنسخ الخدمة "robot.arrAsset" الناتجة إلى حاوية كائن ثنائي كبير الحجم للإخراج ضمن "converted/robot".

يحدد إعداد التكوين outputAssetFileName اسم الأصل المحول - المعلمة اختيارية وإذا لم يتم تحديدها، تستخدم الخدمة اسم ملف الإدخال لإنشاء اسم إخراج.

فتح PowerShell، تأكد من تثبيت Azure PowerShell كما هو مذكور في المتطلبات الأساسية. ومن ثمَّ، سجل الدخول إلى اشتراكك في Azure باستخدام الأمر واتبع الإرشادات التي تظهر على الشاشة:

Connect-AzAccount

ملاحظة

في حالة وجود أكثر من اشتراك واحد في مؤسستك، قد تحتاج إلى تحديد هوية الاشتراك ومناقشات المستأجر. البحث عن التفاصيل في وثائق الاتصال-AzAccount.

تغيير إلى azure-remote-rendering\Scripts الدليل وتشغيل تحويل البرنامج النصي:

.\Conversion.ps1 -UseContainerSas

يجب أن ترى شيئا مثل هذا: Conversion.ps1

3. التحويل عبر مكالمات API

توفير كل من C# وC++ API نقطة إدخال للتفاعل مع الخدمة:

إدراج نموذج جديد في تطبيق نموذج التشغيل السريع

إنشاء تحويل البرنامج النصيShared Access Signature (SAS) URI للنموذج المحول. يمكنك الآن نسخ "يو آر إل" هذا كاسم للنموذج إلى نموذج تطبيق التشغيل السريع(انظر التشغيل السريع: تقديم نموذج باستخدام Unity).

استبدال النموذج في Unity

يجب أن يتم تحميل النموذج الآن وتقديم نموذج مخصص!

اختياري: إعادة إنشاء SAS URI

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

  1. تسجيل الدخول إلى ⁧⁩مدخل Microsoft Azure⁧⁩.
  2. حدد مورد حساب التخزين الخاص بك:

لقطة شاشة تبرز مورد حساب التخزين المحدد.

  1. في الشاشة التالية، حدد مستكشف التخزين في اللوحة اليسرى وابحث عن نموذج الإخراج (ملف.arrAsset ) في حاوية تخزين كائن ثنائي كبير الحجم arroutput . انقر بزر الماوس الأيمن فوق الملف وحدد الحصول على توقيع الوصول المشترك من قائمة السياق:

    الوصول إلى التوقيع

  2. فتح شاشة جديدة تمكّنك من تحديد تاريخ انتهاء الصلاحية. اضغط على إنشاءونسخ عنوان " يو آر إل" الموضح في مربع الحوار التالي. يحل عنوان "يو آر إل" الجديد محل "يو آر إل" المؤقت الذي تم إنشاؤه بواسطة البرنامج النصي.

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

الآن، بعد أن تعرفت على الأساسيات، ألقِ نظرة على البرامج التعليمية لدينا للحصول على مزيد من المعرفة الشاملة.

إذا كنت ترغب في معرفة تفاصيل حول تحويل النموذج، راجعتحويل النموذج REST API.