Rychlý start: Převod modelu pro vykreslování
V části Rychlý start: Vykreslení modelu pomocí Unityjste zjistili, jak pomocí ukázkového projektu Unity vykreslit předdefinovaný model. Tato příručka ukazuje, jak převést vlastní modely.
Dozvíte se, jak provést tyto akce:
- Nastavení účtu úložiště objektů blob v Azure pro vstup a výstup
- Upload a převod 3D model pro použití s Azure Remote Rendering
- Zahrnutí převedeného 3D model do aplikace pro vykreslování
Požadavky
- Dokončení rychlého startu: Vykreslení modelu pomocí Unity
- Převod pomocí skriptu PowerShellu: Instalace Azure PowerShell (dokumentace)
- Otevření PowerShellu s právy správce
- Spustit:
Install-Module -Name Az -AllowClobber
Přehled
Renderer na serveru nemůže pracovat přímo s formáty zdrojového modelu, jako je FBX nebo GLTF. Místo toho vyžaduje, aby byl model ve proprietárním binárním formátu. Služba převodu využívá modely z úložiště objektů blob v Azure a zapisuje převedené modely zpět do poskytnutého kontejneru úložiště objektů blob v Azure.
Budete potřebovat:
- Předplatné Azure
- Účet StorageV2 ve vašem předplatném
- Kontejner úložiště objektů blob pro vstupní model
- Kontejner úložiště objektů blob pro výstupní data
- Model, který se má převést, viz ukázkové modely
- Podívejte se na seznam podporovaných zdrojových formátů.
- Pokud chcete použít ukázkový převodní skript, nezapomeňte připravit vstupní složku, která obsahuje model a všechny externí závislosti (jako jsou externí textury nebo geometrie).
Nastavení Azure
Pokud ještě účet nemáte, přejděte na , klikněte na možnost bezplatného účtu a https://azure.microsoft.com/get-started/ postupujte podle pokynů.
Jakmile máte účet Azure, přejděte na https://ms.portal.azure.com/#home .
Storage účtu
K vytvoření úložiště objektů blob potřebujete nejprve účet úložiště. Pokud ho chcete vytvořit, klikněte na tlačítko Vytvořit prostředek:

Na nové obrazovce zvolte na Storage a pak vyberte Storage – objekt blob, soubor, tabulka, fronta z dalšího sloupce:

Kliknutím na toto tlačítko se zobrazí následující obrazovka s vlastnostmi úložiště, které se mají vyplnit:

Vyplňte formulář následujícím způsobem:
- Vytvořte novou skupinu prostředků z odkazu pod rozevíracím seznamem a pojmnte ji ARR_Tutorial
- Jako název Storage zadejte jedinečný název. Tento název musí být globálně jedinečný, jinak se zobrazí výzva s informací, že se název už používá. V rozsahu tohoto rychlého startu ji pojmenováváme arrtutorialstorage. V tomto rychlém startu ho proto musíte nahradit svým jménem.
- Vyberte umístění blízko vás. V ideálním případě použijte stejné umístění jako pro nastavení vykreslování v druhém rychlém startu.
- Výkon nastavený na Hodnotu Standard
- Druh účtu nastavený na StorageV2 (obecné účely v2)
- Replikace nastavená na geograficky redundantní úložiště jen pro čtení (RA-GRS)
- Úroveň přístupu nastavená na "Horká"
Žádné z vlastností na jiných kartách není třeba měnit, takže můžete pokračovat v části Zkontrolovat a vytvořit a pak podle pokynů nastavení dokončit.
Web vás teď informuje o průběhu nasazování a nakonec hlásí,že nasazení je dokončené. Další kroky zobrazíte kliknutím na tlačítko Přejít k prostředku:

Vytvoření úložiště objektů blob
Dále potřebujeme dva kontejnery objektů blob, jeden pro vstup a druhý pro výstup.
Pomocí tlačítka Přejít k prostředku výše se dostanete na stránku s panelem vlevo, který obsahuje nabídku seznamu. V tomto seznamu v kategorii Blob service klikněte na tlačítko Kontejnery:

Stisknutím tlačítka + Kontejner vytvořte vstupní kontejner úložiště objektů blob. Při vytváření použijte následující nastavení:
- Name = arrinput
- Úroveň veřejného přístupu = privátní
Po vytvoření kontejneru znovu klikněte na + Kontejner a opakujte tento postup s tímto nastavením pro výstupní kontejner:
- Název = arroutput
- Úroveň veřejného přístupu = privátní
Teď byste měli mít dva kontejnery úložiště objektů blob:

Spuštění převodu
Převod modelu je možné aktivovat třemi různými způsoby:
1. Převod prostřednictvím nástroje ARRT
Existuje nástroj založený na uživatelském rozhraní s názvem ARRT, který začíná převody a pracuje s vykresleným výsledkem.

2. Převod prostřednictvím skriptu PowerShellu
Pro usnadnění volání služby převodu prostředků poskytujeme užitkový skript. Nachází se ve složce Skripty a nazývá se Conversion.ps1.
Konkrétně tento skript
- nahraje všechny soubory v daném adresáři z místního disku do vstupního kontejneru úložiště.
- zavolá metodu převodu REST API, která načte data ze vstupního kontejneru úložiště a spustí převod, který vrátí ID převodu.
- dotazování rozhraní API stavu převodu s načtenou ID převodu, dokud proces převodu neskončí úspěšně nebo neúspěchem
- načte odkaz na převedený prostředek ve výstupním úložišti.
Skript načte svou konfiguraci ze souboru Scripts\arrconfig.json. Otevřete tento soubor JSON v textovém editoru.
{
"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"
}
}
Konfigurace ve skupině accountSettings (ID účtu a klíč) by se měla vyplnit podobně jako přihlašovací údaje v rychlém startu Vykreslení modelu pomocí Unity.
Ve skupině assetConversionSettings nezapomeňte změnit resourceGroup, blobInputContainerName a blobOutputContainerName, jak je vidět výše. Všimněte si, že hodnotu arrtutorialstorage je potřeba nahradit jedinečným názvem, který jste vybrali při vytváření účtu úložiště.
Změňte localAssetDirectoryPath tak, aby odkazovat na adresář na vašem disku, který obsahuje model, který chcete převést. Dávejte pozor, abyste v cestě správně uvozely zpětná lomítka (" ") pomocí dvojitých \ zpětného lomítka \ \ ("").
Všechna data z cesty uvedené v localAssetDirectoryPath se nahrají do kontejneru objektů blob blobInputContainerName pod dílčí cestou zadanou parametrem inputFolderPath. Proto se v příkladu konfigurace nad obsahem adresáře "D: tmp robot" nahraje do kontejneru objektů blob "arrinput" účtu úložiště \ \ arrtutorialstorage v cestě "robotConversion". Existující soubory se přepíšou.
Změňte inputAssetPath na cestu modelu, který se má převést – cesta je relativní vzhledem k localAssetDirectoryPath. Jako oddělovač cesty použijte \ "/". Pro soubor "robot.fbx", který se nachází přímo v "D: \ tmp \ robot", použijte "robot.fbx".
Po převodu se model zapisuje zpět do kontejneru úložiště, který mu předal objekt blobOutputContainerName. Dílčí cesta lze zadat poskytnutím volitelné cesty outputFolderPath. V příkladu výše se výsledná sada "robot.arrAsset" zkopíruje do výstupního kontejneru objektů blob v části "converted/robot".
Nastavení konfigurace outputAssetFileName určuje název převedeného assetu – parametr je volitelný a výstupní název souboru se z názvu vstupního souboru odvodí jinak.
Otevřete PowerShell a ujistěte se, že jste nainstalovali Azure PowerShell, jak je uvedeno v požadavcích. Pak se přihlaste ke svému předplatnému pomocí následujícího příkazu a postupujte podle pokynů na obrazovce:
Connect-AzAccount
Poznámka
V případě, že má vaše organizace více než jedno předplatné, možná budete muset zadat argumenty SubscriptionId a Tenant. Podrobnosti najdete v dokumentaci Připojení-AzAccount.
Změňte adresář azure-remote-rendering\Scripts na a spusťte převodní skript:
.\Conversion.ps1 -UseContainerSas
Mělo by se zobrazit něco takového: 
3. Převod prostřednictvím volání rozhraní API
Jazyk C# i rozhraní API jazyka C++ poskytují vstupní bod pro interakci se službou:
- C# RemoteRenderingClient.StartAssetConversionAsync()
- C++ RemoteRenderingClient::StartAssetConversionAsync()
Vložení nového modelu do ukázkové aplikace pro rychlý start
Převodní skript vygeneruje identifikátor URI sdíleného přístupového podpisu (SAS) pro převedený model. Tento identifikátor URI teď můžete zkopírovat jako název modelu do ukázkové aplikace pro rychlý start (viz Rychlý start: Vykreslení modelu pomocí Unity).

Ukázka by teď měla načíst a vykreslit vlastní model.
Volitelné: Opětovné vytvoření identifikátoru URI SAS
Identifikátor URI SAS vytvořený převodní skriptem bude platný jenom 24 hodin. Po vypršení platnosti už ale model znovu převádět není. Místo toho můžete vytvořit nový SAS na portálu, jak je popsáno v dalších krocích:
- Přejděte na web Azure Portal.
- Klikněte na prostředek Storage účtu: Snímek obrazovky se zvýrazněnou

- Na následující obrazovce klikněte na Storage na levém panelu a vyhledejte výstupní model (soubor .arrAsset) v kontejneru úložiště objektů blob arroutput. Klikněte pravým tlačítkem na soubor a v místní nabídce vyberte Získat sdílený přístupový podpis:

- Otevře se nová obrazovka, kde můžete vybrat datum vypršení platnosti. Stiskněte Vytvořit a zkopírujte identifikátor URI, který se zobrazí v dalším dialogovém okně. Tento nový identifikátor URI nahrazuje dočasný identifikátor URI, který skript vytvořil.
Další kroky
Teď, když znáte základy, se podívejte na naše kurzy, abyste získali podrobnější znalosti.
Pokud se chcete dozvědět podrobnosti o převodu modelu, podívejte se na informace o převodu modelu REST API.