全面理解Unity加載和內(nèi)存管理機(jī)制

貼下地址,看了確實(shí)很有幫助
http://www.ceeger.com/forum/read.php?tid=4394
http://www.ceeger.com/forum/read.php?tid=4466
http://blog.csdn.net/lodypig/article/details/51879702
在5.3之前,如果需要解壓,都在四個(gè)API(New WWW、CreateFromFile、LoadFromMemory、LoadFromCache等)中進(jìn)行,而不是在后面執(zhí)行
1、看一下AB制作的API說(shuō)明,AB是可以不壓縮的;
2、CreateFromFile在4.x的API,只能加載非壓縮的AB,而在5.0以后,對(duì)應(yīng)的是LoadFromFile,5.3之后可以加載任何壓縮格式的AB了

https://blog.uwa4d.com/archives/ABTheory.html

AssetBundle.Unload (unloadAllLoadedObjects : bool)卸載所有包含在bundle中的對(duì)象。
卸載釋放bundle中所有序列化數(shù)據(jù)。當(dāng)unloadAllLoaderObjects為假,bundle內(nèi)的序列化數(shù)據(jù)將被釋放,但是任何從這個(gè)bundle中實(shí)例化的物體都將完好。當(dāng)然,你不能從這個(gè)bundle中加載更多物體。當(dāng)unloadAllLoaderObjects為真,所有從該bundle中加載的物體也將被銷毀。如果場(chǎng)景中有游戲物體引用該資源,那么引用也會(huì)丟失。
這是U3D沒(méi)有處理好的一個(gè)環(huán)節(jié)。在WWW加載資源完畢后,對(duì)資源進(jìn)行instantiate后,對(duì)其資源進(jìn)行unload,這時(shí)問(wèn)題就發(fā)生 了,instantiate處理渲染需要一定的時(shí)間,雖然很短,但也是需要1,2幀的時(shí)間。此時(shí)進(jìn)行unload會(huì)對(duì)資源渲染造成影響,以至于沒(méi)有貼圖或 者等等問(wèn)題發(fā)生。

解決辦法:
自己寫個(gè)時(shí)間等待代碼,最好不要用WaitForSeconds,U3D的API,這個(gè)東西很撮,惡心死我了。。。
我估計(jì)它這個(gè)類寫的有問(wèn)題,檢查了好長(zhǎng)時(shí)間,最后還是自己寫了幾行代碼來(lái)替換這個(gè)類,解決了問(wèn)題。
等待個(gè)0.5秒到1秒之后再進(jìn)行Unload。這樣就不會(huì)出現(xiàn)instantiate渲染中就運(yùn)行unload的情況了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1、什么是AssetBundle AssetBundle 是Unity pro提供的一種用來(lái)存儲(chǔ)資源的文件格式,它...
    好怕怕閱讀 7,874評(píng)論 1 8
  • Babybus-u3d技術(shù)交流-Unity加載和內(nèi)存管理 [unity里有兩種動(dòng)態(tài)加載機(jī)制:一是Resources...
    Babybus_Unity閱讀 1,574評(píng)論 3 24
  • Unity3D 里有兩種動(dòng)態(tài)加載機(jī)制:一個(gè)是Resources.Load,另外一個(gè)通過(guò)AssetBundle,其實(shí)...
    IongX閱讀 1,790評(píng)論 0 5
  • 原文地址 http://www.fx114.net/qa-75-172454.aspx 使用Profiler工具...
    IongX閱讀 6,260評(píng)論 1 11
  • 我和老媽說(shuō)起今天知道一個(gè)云南白族的名菜叫“蝴蝶撲泉”,而后說(shuō)起了這個(gè)美妙名字的來(lái)歷,做法,說(shuō)聽著名字就想吃。 我媽...
    孫艶閱讀 1,730評(píng)論 0 3

友情鏈接更多精彩內(nèi)容