什麼是Scriptable Object?
是一種存放或整理資料的方式,也是物件模型、範本,你可以把它看成在網頁內的CSS,設定完成資料範本後,我們可以拿來客製化各種資訊,例如按鈕顏色、圖示。
本例中將使用來作為修改UI皮膚的模板,例如我要修改按鈕的顏色,我只需要修改Scriptable Object Data內的顏色,他就會自動幫我套用所有相關的按鈕,或是設定預設模型,未來如果需要創建許多按鈕,就能直接拿來用。
本例中將使用來作為修改UI皮膚的模板,例如我要修改按鈕的顏色,我只需要修改Scriptable Object Data內的顏色,他就會自動幫我套用所有相關的按鈕,或是設定預設模型,未來如果需要創建許多按鈕,就能直接拿來用。
為何要用?
如果遊戲內物件越來越多,會導致於越來越無法管控,之後想要修改大量物件,會變得很麻煩,如果採用此方式,可以很簡單的做替換的動作。
- 建造一個可客製化UI元素
- 建造一個使用Scriptable Object建造模板
- 配置不同的風格到不同的UI元素
建立模板:
首先需要建立四種腳本。
- FlexibleUIData Scriptable Object
- 存放基本資料,例如顏色、按鈕圖示
- FlexibleUI Base Class
- 擴充和控制UI元素,可看成S.O.與物件的橋樑
- FlexibleUIButton Class
- 繼承 Base Class 的資料
- 該腳本為每個按鈕的Component
- 提供選單選擇按鈕類型
- FlexibleUIInstance Class (一個放置Prefabs的資料表,處理生成新的按鈕)
留言
張貼留言