英吋 Unity

Unity – 在 Editor 讀取 AssetBundle

不小心又懶了好幾個月了~(躺

今天奮發一下,寫個之前一直沒找到直接解法的東西。
(大概是太簡單,才沒人討論吧。・゚・(つд`゚)・゚・)

最後摸出解法,真的很簡單!!
但我想世界上應該有和我一樣鬼打強的朋友吧~ 哈哈!!

先講結果

// asset bundle file's path
var filePath = "test/bundle.unity3d";

var dataInByteArr = File.ReadAllBytes(filePath);
var assetBundle = AssetBundle.CreateFromMemoryImmediate(dataInByteArr);

// use asset bundle ...

會有個需求,是想要透過 EditorWindow 檢測某些 AssetBundle 裡面的資訊用。
在此之前,所有的 AssetBundle 都是透過 WWW 在 runtime 讀取的。
但 WWW 需要在有 Coroutine 的 runtime 環境才能使用。
身為一個能懶則懶的工程師,能不多按一個 button 是一個,you know~

看了官方文件,看起來最直覺的就是 AssetBundle.CreateFromFile 這個 API 了~

BUT!!!

Only uncompressed asset bundles are supported by this function.

槓!!!!!!!!!!!!!!!! 究竟為甚麼只支援 uncompressed ????
無法理解(´_ゝ`)…

ref

AssetBundle.CreateFromMemoryImmediate

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.