Hızlı başlangıç: Modeli işlenmek üzere dönüştürme

Hızlı başlangıç: Unity ile model işleme, bir yerleşik modeli Işlemek için Unity örnek projesini nasıl kullanacağınızı öğrendiniz. Bu kılavuzda kendi modellerinizi nasıl dönüştürebileceğiniz gösterilmektedir.

Şunları öğrenirsiniz:

  • Giriş ve çıkış için bir Azure Blob depolama hesabı ayarlama
  • Azure uzaktan işleme ile kullanmak için bir 3b modeli Upload ve dönüştürme
  • Dönüştürülmüş 3B modeli işleme için bir uygulamaya ekleme

Önkoşullar

Genel Bakış

Sunucu üzerindeki işleyici, FBX veya GLTF gibi kaynak model biçimleriyle doğrudan çalışabilir. Bunun yerine, modelin özel bir ikili biçimde olmasını gerektirir. Dönüştürme hizmeti, Azure Blob depolama alanındaki modelleri kullanır ve dönüştürülen modelleri, belirtilen bir Azure Blob depolama kapsayıcısına geri yazar.

Gerekenler:

  • Bir Azure aboneliği
  • Aboneliğinizdeki bir ' StorageV2 ' hesabı
  • Giriş modeliniz için bir BLOB depolama kapsayıcısı
  • Çıkış verileriniz için bir BLOB depolama kapsayıcısı
  • Dönüştürülecek bir model, bkz. örnek modeller
    • Desteklenen kaynak biçimlerinin listesini görün
    • Örnek dönüştürme betiğini kullanmak için, modeli ve tüm dış bağımlılıkları (dış dokular veya geometri gibi) içeren bir giriş klasörü hazırlandığınızdan emin olun

Azure kurulumu

Henüz bir hesabınız yoksa, sayfasına gidin https://azure.microsoft.com/get-started/ , ücretsiz hesap seçeneğine tıklayın ve yönergeleri izleyin.

Bir Azure hesabınız olduğunda adresine gidin https://ms.portal.azure.com/#home .

Depolama hesabı oluşturma

BLOB depolama oluşturmak için önce bir depolama hesabına ihtiyacınız vardır. Bir tane oluşturmak için, "kaynak oluştur" düğmesine tıklayın:

Azure-Kaynak Ekle

yeni ekrandan, sol taraftaki Depolama seçin ve ardından sonraki sütundan hesap-blob, dosya, tablo, kuyruk Depolama :

Azure-depolama ekleme

Bu düğmeye tıkladığınızda, doldurulacak depolama özellikleriyle aşağıdaki ekran görüntülenir:

Azure kurulumu

Formu aşağıdaki şekilde doldurun:

  • Açılan kutunun altındaki bağlantıdan yeni bir kaynak grubu oluşturun ve bu ARR_Tutorial adlandırın
  • Depolama hesap adı için buraya benzersiz bir ad girin. Bu ad genel olarak benzersiz olmalıdır, aksi takdirde adın zaten alındığını bildiren bir istem olacaktır. Bu hızlı başlangıç kapsamında, arrtutorialstorage olarak adlandırın. Buna uygun olarak, bu hızlı başlangıçtaki herhangi bir oluşum için adınızı adınızla değiştirmeniz gerekir.
  • Size yakın bir konum seçin. İdeal olarak, diğer hızlı başlangıçta işlemeyi ayarlamak için kullanılan konumu kullanır.
  • ' Standart ' olarak ayarlanan performans
  • Hesap türü ' StorageV2 (genel amaçlı v2) ' olarak ayarlandı
  • Çoğaltma ' Okuma Erişimli Coğrafi olarak yedekli depolama (RA-GRS) ' olarak ayarlandı
  • Erişim katmanı ' Hot ' olarak ayarlandı

Diğer sekmelerdeki özelliklerden hiçbirinin değiştirilmemesi gerekir, bu sayede "gözden geçir + oluştur" ile devam edebilir ve ardından kurulumu tamamlamaya yönelik adımları izleyebilirsiniz.

Web sitesi artık dağıtımınızın ilerleme durumu hakkında bilgi verir ve "dağıtımınız tamamlanmıştır". Sonraki adımlar için "kaynağa git" düğmesine tıklayın:

Azure Depolama oluşturma tamam

BLOB depolama oluşturma

Ardından, biri giriş ve diğeri çıkış için olmak üzere iki blob kapsayıcıyla ihtiyacımız var.

Yukarıdaki "kaynağa git" düğmesine, sol taraftaki bir liste menüsü içeren bir panelin bulunduğu bir sayfaya ulaşırsanız. "Blob hizmeti" kategorisinin altındaki listede, "kapsayıcılar" düğmesine tıklayın:

Azure-kapsayıcı ekleme

Giriş blobu depolama kapsayıcısını oluşturmak için "+ Container" düğmesine basın. Oluştururken aşağıdaki ayarları kullanın:

  • Ad = arrinput
  • Genel erişim düzeyi = özel

Kapsayıcı oluşturulduktan sonra + Container ' e tıklayın ve Çıkış kapsayıcısı için bu ayarlarla yineleyin:

  • Ad = arroutput
  • Genel erişim düzeyi = özel

Artık iki BLOB depolama Kapsayıcınız olmalıdır:

Blob Depolama kurulumu

Dönüştürmeyi çalıştırma

Model dönüştürmeyi tetiklemenin üç farklı yolu vardır:

1. ARRT aracı aracılığıyla dönüştürme

Dönüşümleri başlatmak ve işlenmiş sonuçla etkileşmek için ARRT adlı bir UI tabanlı araç vardır. ARRT

2. bir PowerShell betiği aracılığıyla dönüştürme

Varlık dönüştürme hizmetini çağırmayı kolaylaştırmak için bir yardımcı program betiği sağlıyoruz. Betikler klasöründe bulunur ve Conversion.ps1 olarak adlandırılır.

Özellikle, bu betik

  1. belirli bir dizindeki tüm dosyaları yerel diskten giriş depolama kapsayıcısına yükler
  2. , giriş depolama kapsayıcısından verileri alacak ve dönüştürme KIMLIĞI döndüren bir dönüştürme başlatan varlık dönüştürme REST APIçağırır
  3. dönüştürme işlemi başarılı veya başarısız ile sonlanana kadar, alınan dönüştürme KIMLIĞIYLE birlikte dönüştürme durumu API 'sini yoklayın
  4. çıktı depolama alanındaki dönüştürülmüş varlığın bir bağlantısını alır

Betik, Scripts\arrconfig.JSON dosyasından yapılandırmasını okur. Bu JSON dosyasını bir metin düzenleyicisinde açın.

{
    "accountSettings": {
        "arrAccountId": "8*******-****-****-****-*********d7e",
        "arrAccountKey": "R***************************************l04=",
        "region": "<your-region>"
    },
    "renderingSessionSettings": {
        "vmSize": "standard",
        "maxLeaseTime": "1:00:00"
    },
    "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 grubu içindeki (hesap kimliği ve anahtar) yapılandırma, Unity hızlı başlangıç ile model işlemeiçindeki kimlik bilgilerine benzer şekilde doldurulmalıdır.

Assetconversionsettings grubunun içinde, aşağıda görüldüğü gibi resourceGroup, Blobınputcontainername ve bloi putcontainername ' i değiştirdiğinizden emin olun. Arrtutorialstorage değerinin, depolama hesabı oluşturma sırasında seçtiğiniz benzersiz adla değiştirilmeleri gerektiğini unutmayın.

Localassetdirectorypath öğesini, diskinizde yer alan ve dönüştürmek istediğiniz modeli içeren dizine işaret etmek üzere değiştirin. \Çift ters eğik çizgi ("") kullanarak yoldaki ters eğik çizgileri ("") doğru bir şekilde kaçış konusunda dikkatli olun \ \ .

Localassetdirectorypath içinde verilen yoldaki tüm veriler, ınputfolderpath tarafından verilen bir alt yol altında blobinputcontainername blob kapsayıcısına yüklenir. Bu nedenle, "D: tmp robot" dizininin içeriğinin yukarıdaki örnek yapılandırmasında " \ \ robotConversion" yolu altındaki "arrtutorialstorage" depolama hesabının "arrinput" blob kapsayıcısına yüklenir. Zaten var olan dosyaların üzerine yazılacak.

Inputassetpath öğesini dönüştürülecek modelin yolu olarak değiştirin; yol, localAssetDirectoryPath öğesine görelidir. Yol ayırıcısı olarak "" yerine "/" kullanın \ . Bu nedenle, doğrudan "D: tmp robot" içinde bulunan bir "robot. fbx" dosyası için \ \ "robot. fbx" kullanın.

Model dönüştürüldükten sonra, Bloi Putcontainername tarafından verilen depolama kapsayıcısına geri yazılır. İsteğe bağlı Outputfolderpath sağlanarak bir alt yol belirtilebilir. Yukarıdaki örnekte, sonuçta elde edilen "robot. arrAsset", "dönüştürülmüş/robot" altındaki çıkış blob kapsayıcısına kopyalanacaktır.

Outputassetfilename yapılandırma ayarı, dönüştürülmüş varlığın adını belirler-parametre isteğe bağlıdır ve çıkış dosya adı, aksi takdirde giriş dosyası adından çıkarılır.

bir PowerShell açın, Azure PowerShell önkoşullarabelirtilen şekilde yüklediğinizden emin olun. Ardından aşağıdaki komutla aboneliğinizde oturum açın ve ekrandaki yönergeleri izleyin:

Connect-AzAccount

Not

Kuruluşunuzun birden fazla aboneliğine sahip olması durumunda, SubscriptionID ve Tenant bağımsız değişkenlerini belirtmeniz gerekebilir. Bağlan-azaccount belgelerindekiayrıntıları bulun.

azure-remote-rendering\ScriptsDizine geçin ve dönüştürme betiğini çalıştırın:

.\Conversion.ps1 -UseContainerSas

Şuna benzer bir şey görmeniz gerekir: Conversion.ps1

3. API çağrıları aracılığıyla dönüştürme

C# ve C++ API 'SI, hizmetle etkileşimde bulunmak için bir giriş noktası sağlar:

Hızlı Başlangıç örnek uygulamasına yeni model Ekle

Dönüştürme betiği, dönüştürülmüş model için bir paylaşılan erişim imzası (SAS) URI 'si oluşturur. Artık bu URI 'yi model adı olarak hızlı başlangıç örnek uygulamasına kopyalayabilirsiniz (bkz. hızlı başlangıç: Unity ile model oluşturma).

Unity 'de modeli değiştirme

Örnek, şimdi özel modelinizi yükleyip işlemelidir!

İsteğe bağlı: SAS URI 'sini yeniden oluşturma

Dönüştürme betiği tarafından oluşturulan SAS URI 'SI yalnızca 24 saat için geçerli olacaktır. Ancak, bu süre dolduktan sonra modelinizi yeniden dönüştürmeniz gerekmez. Bunun yerine, sonraki adımlarda açıklandığı gibi portalda yeni bir SAS oluşturabilirsiniz:

  1. Azure portal'a gidin
  2. Depolama hesap kaynağına tıklayın:  seçili Depolama hesabı kaynağını vurgulayan ekran görüntüsü.
  3. aşağıdaki ekranda, sol panelde Depolama gezgini ' ne tıklayın ve arroutput blob depolama kapsayıcısında çıkış modelinizi (. arrAsset dosyası) bulun. Dosyaya sağ tıklayın ve bağlam menüsünden paylaşılan erişim Imzası al ' ı seçin:  imza erişimi
  4. Sona erme tarihi seçebileceğiniz yeni bir ekran açılır. Oluştur' a basın ve sonraki iletişim kutusunda gösterilen URI 'yi kopyalayın. Bu yeni URI, betiğin oluşturulduğu geçici URI 'yi değiştirir.

Sonraki adımlar

Artık temel bilgileri öğrenmiş olduğunuza göre, daha ayrıntılı bilgi edinmek için öğreticilerimize göz atın.

Model dönüştürmenin ayrıntılarını öğrenmek isterseniz, model dönüştürme REST APIgöz atın.