如果還沒有安裝套件的可以看本系列的第一篇教學:
Unity Addressable 教學 (一) 簡介與安裝
因為篇幅關係,程式碼的內容將會在下一篇詳細說明
範例連結: github範例
目錄
一、準備三個預備被打包成Addressables的Scene
一、準備三個預備被打包成Addressables的Scene
範例中準備了三個Scene當作要打包的資源,並使用Addressables.LoadSceneAsync載入,其他種資源像是Prefab等等也有所對應的載入函式,本文只使用Scene當作要載入的資源。
Addressables 有內建Http server 可以讓開發更加簡單
1.開啟Windows -> Asset Management -> Addressables -> Hosting
2.Create -> Local Hosting
3.設定Local host
1.打開Groups -> Asset Management -> Addressables -> Setttings
2.
a. 將 Disable Caralog Update on Startup 打勾,打勾後執行Addressables.InitializeAsync() 後並不會更新Catalogs(記錄各個包體的版本),可以運用這個屬性搭配Addressables.CheckForCatalogUpdates、和Addressables.UpdateCatalogs來達到一些特殊的需求,像是檢查有更新的話才跳出視窗讓玩家決定要不要更新。
b. 打勾Build remote Caralog ,打勾後每次更新包體就會產生新的Catalogs檔,使得各個版本的包體可以共存在Server上而不會有衝突
c. 設定Build / Load Path 為Remote
可以依照環境來設定Profile例如開發環境、測試環境、正式環境
1.開啟Windows -> Asset Management -> Addressables -> Groups
2.管理Profiles
3.增加Profiles
4.重新命名
5.命名成LocalAddressablesServer
6.複製剛剛設定的Http server 資訊到Profile
1.開啟Windows -> Asset Management -> Addressables -> Groups
2.在Project中選擇你要打包的資源,並在Inspector中將Addressable打勾
3.增加Label,範例中運用下載某個Label來達到下載所有資源的效果,所以下面要將所有資源標記上相同的Label。而Label是可以複選的。
3.將所有資源標上AllAddressables的Label
4.將三個資源分別成三個包體,一個Group就是一個包體,因為要模擬多個包體所以將三個Scene分開
5.選擇Group之後可以在Inspector中調整設定,範例中要模擬下載包體,所以要將Build/Load Path 改成Remote
6.將 Content Update Restriction 中的Update Restriction 選擇成 Can Change Post Release代表資源「預期」可以更新。
之所以強調預期是因為即使選擇Cannot Change Post Release 預期不應該被更新,包體還是可以透過特殊的手法進行更新,但文章中並不會提到。有空再來好好談談。
4.Play mode script使用Simulate Group 在Editor執行程式測試,這個選項不會編譯出Addressables包體,如果要將遊戲編譯成Standalone測試則要選擇Use Existing Build
5. Build包體 (選擇Simulate Groups) 只會分析包體
6.進入遊戲看結果
留言列表