訪問HoloLens部署的Unity項目中的資產 開發HoloLens應用程序通常涉及從資源文件夾中加載文本,圖像或音頻等資產。 但是,訪問這些資產的方法在Unity編輯器和部署的HoloLens應用程序之間有很大不同。
Unity編輯資產加載
> 在Unity編輯器中,您可能會嘗試使用文件系統路徑加載資產,例如:
這種方法與HoloLens部署不兼容<code class="language-C#">string basePath = Application.dataPath; string metadataPath = String.Format(@"\Resources\...\metadata.txt", list); if (File.Exists(basePath + metadataPath)) { using (StreamReader sr = new StreamReader(new FileStream(basePath + metadataPath, FileMode.Open))) { ... } } foreach (string str in im) { spriteList.Add(Resources.Load<Sprite>(str)); }</code>
。 這是正確的技術:
1。資產路徑規範: Resources.Load()
路徑相對於您項目的文件夾中的任何文件夾。
Resources
,Assets
,.txt
.png
2。加載資產類型:.mp3
/
>
>音頻文件:Resources.Load()
>
圖像文件:
<code class="language-C#">TextAsset txtAsset = Resources.Load<TextAsset>("textfile"); string tileFile = txtAsset.text;</code>
> sprites(單):
<code class="language-C#">AudioClip audio = Resources.Load<AudioClip>("soundFile");</code>
> sprites(多重):
<code class="language-C#">Texture2D texture = Resources.Load<Texture2D>("textureFile");</code>
>
<code class="language-C#">Sprite sprite = Resources.Load<Sprite>("spriteFile");</code>
<code class="language-C#">Sprite[] sprites = Resources.LoadAll<Sprite>("spriteFolder");</code>
>子文件夾:
<code class="language-C#">VideoClip video = Resources.Load<VideoClip>("videoFile");</code>
>使用前斜線在子文件夾中的訪問資產:
<code class="language-C#">GameObject prefab = Resources.Load<GameObject>("shipPrefab");</code>
為了提高性能,請使用
進行異步資產加載。<code class="language-C#">Mesh mesh = Resources.Load<Mesh>("yourModelFileName");</code>
摘要:
通過遵守這些準則,您可以在部署Unity應用程序到HoloLens時可靠地從>文件夾中始終使用
和相對路徑,省略文件擴展名並使用前向斜線。以上是如何從Unity中正確地加載資源以進行HoloLens部署?的詳細內容。更多資訊請關注PHP中文網其他相關文章!