2016-07-22 111 views
2

我想加載位於「Resources」文件夾之外的「動態」資產(特別是FBX文件),以便用戶可以添加/刪除/修改無需重新構建項目的文件。從「資源」文件夾外加載資產

爲了讓用戶在不同種類的設備(目標平臺是desktop/android/ios)中輕鬆訪問這些文件,使用Application.persistentDataPathApplication.streamingAssetsPath似乎是合理的。

現在的問題是:我如何加載它們(作爲適當的Unity對象)?

  • 這顯然不能通過Resources.Load()完成,因爲它們在「Resources」文件夾之外。
  • 使用WWW,檢索文件應該很容易,它實際上可以用於某些類型的文件(例如紋理,請參閱http://docs.unity3d.com/ScriptReference/WWW-texture.html),但我看不到加載其他內容的方式。

的想法是,我希望能夠使用這些加載的對象,像這樣:

(GameObject) Instantiate(loadedObject, new Vector3(0, 0, 0), Quaternion.identity);

我會很感激你的幫助(最好與不需要的解決方案「專業執照」)。

+0

看看[這個](http://forum.unity3d.com/threads/loading-fbx-model-from-a-webserver.128344/) –

+0

謝謝!出於某種原因,我沒有遇到過這樣的問題:/(我雖然對答案並不滿意) – qdrien

回答

2

我知道兩個選項,你可以嘗試在這種情況下使用:

  • 建立要加載的每個動態資產的asset bundle,但這似乎並不真的是你想要什麼,因爲用戶仍然有使用Unity3d生成資產包。
  • 使用自定義的3D模型加載器(如post中所述)似乎最適合您的情況。
相關問題