不小心又懶了好幾個月了~(躺
今天奮發一下,寫個之前一直沒找到直接解法的東西。
(大概是太簡單,才沒人討論吧。・゚・(つд`゚)・゚・)
最後摸出解法,真的很簡單!!
但我想世界上應該有和我一樣鬼打強的朋友吧~ 哈哈!!
先講結果
// 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