close

如果還沒有安裝套件的可以看本系列的第一篇教學: 

Unity Addressable 教學 (一) 簡介與安裝


因為篇幅關係,程式碼的內容將會在下一篇詳細說明

範例連結: github範例


目錄

一、準備三個預備被打包成Addressables的Scene

二、設定Editor 自帶的 Http server

三、設定Addressable Setting

、客製化自己的Profile

五、打包Addressables


一、準備三個預備被打包成Addressables的Scene 

範例中準備了三個Scene當作要打包的資源,並使用Addressables.LoadSceneAsync載入,其他種資源像是Prefab等等也有所對應的載入函式,本文只使用Scene當作要載入的資源。

 

 

imageimage

imageimage


二、設定Editor 自帶的 Http server

Addressables 有內建Http server 可以讓開發更加簡單

1.開啟Windows -> Asset Management -> Addressables -> Hosting

註解 2019-12-31 152029

2.Create -> Local Hosting

註解 2019-12-31 152057

3.設定Local host

註解 2019-12-31 152124


三、設定Addressable Setting

1.打開Groups -> Asset Management -> Addressables -> Setttings

註解 2019-12-31 162740

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

註解 2019-12-31 162814


四、客製化自己的Profile

可以依照環境來設定Profile例如開發環境、測試環境、正式環境

1.開啟Windows -> Asset Management -> Addressables -> Groups

註解 2019-12-31 141737

2.管理Profiles

註解 2019-12-31 141821

3.增加Profiles

註解 2019-12-31 141851

4.重新命名

註解 2019-12-31 152447

5.命名成LocalAddressablesServer

註解 2019-12-31 152533

6.複製剛剛設定的Http server 資訊到Profile

註解 2019-12-31 152203

image


五、打包Addressables

1.開啟Windows -> Asset Management -> Addressables -> Groups

註解 2019-12-31 141737

 

2.在Project中選擇你要打包的資源,並在Inspector中將Addressable打勾

註解 2019-12-31 152332

3.增加Label,範例中運用下載某個Label來達到下載所有資源的效果,所以下面要將所有資源標記上相同的Label。而Label是可以複選的。

註解 2019-12-31 152713

註解 2019-12-31 152728

註解 2019-12-31 152800

3.將所有資源標上AllAddressables的Label

註解 2019-12-31 152822

註解 2019-12-31 152835
 

4.將三個資源分別成三個包體,一個Group就是一個包體,因為要模擬多個包體所以將三個Scene分開

註解 2019-12-31 161823

 

註解 2019-12-31 161839

5.選擇Group之後可以在Inspector中調整設定,範例中要模擬下載包體,所以要將Build/Load Path 改成Remote

註解 2019-12-31 161947註解 2019-12-31 162000

6.將 Content Update Restriction 中的Update Restriction 選擇成 Can Change Post Release代表資源「預期」可以更新。

之所以強調預期是因為即使選擇Cannot Change Post Release 預期不應該被更新,包體還是可以透過特殊的手法進行更新,但文章中並不會提到。有空再來好好談談。

註解 2019-12-31 162012

 

4.Play mode script使用Simulate Group 在Editor執行程式測試,這個選項不會編譯出Addressables包體,如果要將遊戲編譯成Standalone測試則要選擇Use Existing Build

image

 

5. Build包體 (選擇Simulate Groups) 只會分析包體

image

 

6.進入遊戲看結果

image

arrow
arrow
    創作者介紹
    創作者 圈圈 的頭像
    圈圈

    學海無涯,很深,非常恩咕嚕咕嚕咕嚕

    圈圈 發表在 痞客邦 留言(0) 人氣()