ab流程
友情提示
設定assetbundle
從上述的說明感覺這個new出來的是乙個空資料夾識,在設定資源時這個資料夾的名字作為了標識來使用。而remove unused names按鈕就是一鍵刪除空資料夾。**生成assetbundle
public class createassetbundles }
- 同時生成的manifest檔案包含一下內容:
- [crc](
- assetfilehash:assetbundle中所有asset檔案的hash,乙個單獨的hash。只用來做增量build時的檢查。
- typetreehash:assetbundle中所有型別的hash,只用來做增量build時的檢查。
- classtypes: assetbundle中包含的所有類型別,這些資料用來得到乙個新的單獨的hash當typetree做增量build檢測。
- asset names.所有在assetbundle中的asset的名稱。
- dependent assetbundle names. assetbundle所依賴的其它assetbundle的名字
- 這個manifest檔案只是用來做增量build的,非執行時必須。
- 放乙個自己的測試資料
做了個小測試,新增了兩個新的assetbundle,名字也不一樣,每次新增這個檔案的內容跟著變,並且crc也在變。
manifestfileversion: 0
crc: 2591254959
assetbundlemanifest:
assetbundleinfos:
info_0:
name: cube
dependencies: {}
info_1:
name: scene
dependencies:
dependency_0: sphere
dependency_1: capsule
info_2:
name: sphere
dependencies: {}
info_3:
name: capsule
dependencies: {}
繼續小測試,把capsule的assetbundle從capsule改為sphere。果然只是簡單記錄了下目錄中的assetbundle資訊。
manifestfileversion: 0
crc: 3856405611
assetbundlemanifest:
assetbundleinfos:
info_0:
name: cube
dependencies: {}
info_1:
name: scene
dependencies:
dependency_0: sphere
info_2:
name: sphere
dependencies: {}
再次小測試,在ui的assetbundle設定中第一欄設定了多層次的名稱結果如下。而且從資料夾結構上看one和two都是兩個資料夾,而在two裡面則是乙個名為xx.three的檔案。
manifestfileversion: 0
crc: 2167406161
assetbundlemanifest:
assetbundleinfos:
info_0:
name: scene
dependencies:
dependency_0: sphere
info_1:
name: sphere
dependencies: {}
info_2:
name: one/two/xx.three
dependencies: {}
shader剝離(shader stripping)
引擎**剝離
using unityengine;
using unityeditor;
namespace assetbundles}}
幾個小工具**
using unityeditor;
using unityengine;
public class getassetbundlenames
}
using unityengine;
using unityeditor;
public class mypostprocessor : assetpostprocessor
}
assetbundle變體
指令碼建議
typetrees
一些實驗
manifestfileversion: 0
crc: 519453993
assetbundlemanifest:
assetbundleinfos:
info_0:
name: xiong.assetbundle
dependencies:
dependency_0: baixiong.assetbundle
dependency_1: baixiongyachi.assetbundle
dependency_2: [email protected]
dependency_3: [email protected]
info_1:
name: baixiong.assetbundle
dependencies: {}
info_2:
name: baixiongyachi.assetbundle
dependencies: {}
info_3:
name: [email protected]
dependencies: {}
info_4:
name: [email protected]
dependencies: {}
Unity的AssetBundle使用總結
assetbundle作為unity引擎的資源載入管理和熱更新手段,在各大專案內普遍的使用著。assetbundle使用方式簡單,只要設定assetbundlename,然後打包出檔案,在執行過程中載入就可以使用,但很多細節上的問題,會影響實際使用的效果。之前我也寫過很多篇文章介紹assetbund...
面試 AssetBundle從打包到使用
選擇要打ab包的 prefab 檢視其 inspector 檢視,在下方有乙個 asset labels 小視窗,修改裡面的名字為想要打包成後的檔名,完成標記。unityeditor.buildpipeline.buildassetbundles outputpath,option,targetpl...
AssetBundle資源載入
一 第一種載入方式本地相對路徑資源載入 assetbundle ab assetbundle.loadfromfile assetbundle sphere.unity3d 本地載入相對路徑載入 載入ab包 gameobject cube ab.loadasset sphere 獲取ab包 inst...