AssetGraph - 好用的AssetBundle打包工具
2016-03-31 11:28
525 查看
作者:Unity Japan
翻譯:Kelvin Lo
AssetGraph是一個用來針對AssetBundle打包的可視化工具。它的目的是用來建立一個架構在自訂規則下,閱讀容易的AssetBundle管理表。
Usage
1.Add Nodes
從Window裡可以呼叫出AssetGraph的視窗,在空白處按右鍵會列出一個你能新增的節點清單,你可以依照需求建立這些節點。建立一個Loader來當作根,它能蒐集Asset清單並帶到下一個節點,以供未來打包AssetBundle當作參考。
Loader節點裡面可以針對不同平台來做分類,代表你可以針對不同發佈平台來打包。指定一個存在的目錄到Load Path來讓系統知道你的Asset要從哪裡載入。
2.Connect Them
當你建立更多的節點後,只要點一下連結點並拖出一條線,你就可以連結他們彼此。點擊這些線AssetGraph會顯示哪些Asset會通過這些管線。
3.Configure Settings
選擇任何種類的節點,你就可以在Inspector視窗看到它的設定選項,透過這些選項你可以自訂你的打包規則,例如,Filter節點可以用來設定過濾規則,Importer節點可以設定不同的匯入方法。
4.Build It!
最後只要按一下AssetGraph視窗上方的Build按鈕就可以打包了。這工具讓美術或是企劃用更直覺的方式來設計包裝。
Why Rule Based?
因為透過規則化的AssetGraph 來處理 AssetBundle 打包流程,程式設計師和美術與企劃就能用更相同的語言來安全的打包,一旦設定好之後當有新的Asset放入目錄,AssetGraph就會自動的將他們納入需要的打包規則中。
Nodes tips
AssetGraph提供幾種不同功能的節點類型,接下來我們會一一介紹。
Loader
Loader會搜尋要打包的Asset並納入它們, 預設的目錄會在專案的根目錄(全專案搜尋),你也可以指定一個存在的目錄給它。
IN: 沒有
OUT: 指定目錄下所有的Asset清單
Filter
Filter會透過Asset的名字和關鍵字配對來過濾前一個節點傳過來的Asset,你可以在同一個Filter建立複數的規則來達成多重過濾。
IN:Asset清單
OUT:過濾配對之後的Asset清單
Importer
Importer用來改寫由前一個節點傳來Asset的匯入設定(import setting) (註:原Asset設定還是存在的)
IN: Asset清單
OUT: 修改過importer setting後的Asset清單
Grouping
Group 用來將不同的資源清單透過關鍵字指定群組,例如:將經過分類並調整過Import Setting之後的Asset清單群組起來。Group用在打包AssetBundle非常有用,也允許在keyword欄位裡面輸入*號當作是通用字。(例如:Asset*)
IN: Asset清單
OUT: 群組化的Asset清單
Prefabricator
Prefabricator可以讓你在遊戲內依據你需要的格式產生Prefab. 你可以在透過修改AssetGraph.PrefabricatorBase腳本來製作你自己的Prefab。
IN: 群組化的Asset清單
OUT: 產生Prefab之後的群組Asset清單
Prefabricator code example:
這裡可以找到完整的範例。
Bundlizer
Bundlizer 用來建立指定好名稱後的 "bundle". 如果有用 "*" 的檔名,會同步採用群組的 “*” 設定。
IN: 群組後的Asset清單
OUT: Bundle清單
BundleBuilder
BundleBuilder會處理所有傳入的規則後建立 AssetBundle 檔案,透過Bundlizer和不同的BundleBuilder,你可以同時建立不同的設定的AssetBundle (例如:壓縮或沒壓縮的)
IN: Bundle清單
OUT: 產生的AssetBundle檔案清單
Exporter
Exporter將上述完成步驟的內容輸出存到目錄,你也可以改變匯出的目錄位置。
IN: Asset清單或AssetBundle檔案清單
雖然AssetGraph是日本Unity所開發,但它目前只是一個插件,也無法再Asset Store上找到,所以你必須要到Github上去拉下來,如果對Github操作不熟,也可以下載我們提供的安裝包(不再更新)。
Download Link:
https://github.com/unity3d-jp/AssetGraph
翻譯:Kelvin Lo
AssetGraph是一個用來針對AssetBundle打包的可視化工具。它的目的是用來建立一個架構在自訂規則下,閱讀容易的AssetBundle管理表。
Usage
1.Add Nodes
從Window裡可以呼叫出AssetGraph的視窗,在空白處按右鍵會列出一個你能新增的節點清單,你可以依照需求建立這些節點。建立一個Loader來當作根,它能蒐集Asset清單並帶到下一個節點,以供未來打包AssetBundle當作參考。
Loader節點裡面可以針對不同平台來做分類,代表你可以針對不同發佈平台來打包。指定一個存在的目錄到Load Path來讓系統知道你的Asset要從哪裡載入。
2.Connect Them
當你建立更多的節點後,只要點一下連結點並拖出一條線,你就可以連結他們彼此。點擊這些線AssetGraph會顯示哪些Asset會通過這些管線。
3.Configure Settings
選擇任何種類的節點,你就可以在Inspector視窗看到它的設定選項,透過這些選項你可以自訂你的打包規則,例如,Filter節點可以用來設定過濾規則,Importer節點可以設定不同的匯入方法。
4.Build It!
最後只要按一下AssetGraph視窗上方的Build按鈕就可以打包了。這工具讓美術或是企劃用更直覺的方式來設計包裝。
Why Rule Based?
因為透過規則化的AssetGraph 來處理 AssetBundle 打包流程,程式設計師和美術與企劃就能用更相同的語言來安全的打包,一旦設定好之後當有新的Asset放入目錄,AssetGraph就會自動的將他們納入需要的打包規則中。
Nodes tips
AssetGraph提供幾種不同功能的節點類型,接下來我們會一一介紹。
Loader
Loader會搜尋要打包的Asset並納入它們, 預設的目錄會在專案的根目錄(全專案搜尋),你也可以指定一個存在的目錄給它。
IN: 沒有
OUT: 指定目錄下所有的Asset清單
Filter
Filter會透過Asset的名字和關鍵字配對來過濾前一個節點傳過來的Asset,你可以在同一個Filter建立複數的規則來達成多重過濾。
IN:Asset清單
OUT:過濾配對之後的Asset清單
Importer
Importer用來改寫由前一個節點傳來Asset的匯入設定(import setting) (註:原Asset設定還是存在的)
IN: Asset清單
OUT: 修改過importer setting後的Asset清單
Grouping
Group 用來將不同的資源清單透過關鍵字指定群組,例如:將經過分類並調整過Import Setting之後的Asset清單群組起來。Group用在打包AssetBundle非常有用,也允許在keyword欄位裡面輸入*號當作是通用字。(例如:Asset*)
IN: Asset清單
OUT: 群組化的Asset清單
Prefabricator
Prefabricator可以讓你在遊戲內依據你需要的格式產生Prefab. 你可以在透過修改AssetGraph.PrefabricatorBase腳本來製作你自己的Prefab。
IN: 群組化的Asset清單
OUT: 產生Prefab之後的群組Asset清單
Prefabricator code example:
public class CreateCharaPrefab : AssetGraph.PrefabricatorBase { public override void In (string groupKey, List<AssetGraph.AssetInfo> source, string recommendedPrefabOutputDir) { /* create character's prefab. 1.texture & material -> set texture to the material of model. 2.model -> instantiate, then set material to model. 3.new prefab -> prefabricate model to new prefab. 4.delete model instance from hierarchy. */ ~~~ DO SOMETHING ~~~ // export prefab data. PrefabUtility.ReplacePrefab(modelObj, prefabFile); } }
這裡可以找到完整的範例。
Bundlizer
Bundlizer 用來建立指定好名稱後的 "bundle". 如果有用 "*" 的檔名,會同步採用群組的 “*” 設定。
IN: 群組後的Asset清單
OUT: Bundle清單
BundleBuilder
BundleBuilder會處理所有傳入的規則後建立 AssetBundle 檔案,透過Bundlizer和不同的BundleBuilder,你可以同時建立不同的設定的AssetBundle (例如:壓縮或沒壓縮的)
IN: Bundle清單
OUT: 產生的AssetBundle檔案清單
Exporter
Exporter將上述完成步驟的內容輸出存到目錄,你也可以改變匯出的目錄位置。
IN: Asset清單或AssetBundle檔案清單
雖然AssetGraph是日本Unity所開發,但它目前只是一個插件,也無法再Asset Store上找到,所以你必須要到Github上去拉下來,如果對Github操作不熟,也可以下載我們提供的安裝包(不再更新)。
Download Link:
https://github.com/unity3d-jp/AssetGraph
相关文章推荐
- tar 解压缩命令详解 2012-03-25 10:48:04
- java程序中乱码的问题
- 温湿度模块 SHT2x 使用手册
- Java遍历目录
- 用C#实现网络爬虫(一)
- ToolBar Style
- nginx反代mogilefs实现海量小文件存储
- 关于Ali Muzaffar大神的AnimatedEditText的优化
- 使用TypedArray设置控件大小注意问题
- 关于Qt中QWidget的setParent的使用方法
- [Mac]Mac 操作系统 常见技巧
- 【Angular】理解Angular中的$apply()以及$digest()
- hdoj1878欧拉回路
- uva 532 Dungeon Master(三维bfs)
- 查看远程git log
- 优雅地使用Handler,避免内存溢出、空指针
- 查看远程git log
- 百分比布局PercentRelativeLayout
- 笔记 - 10.4、HTML - CSS滤镜笔记
- struts2学习