I. Sơ lượt
Repo: https://github.com/eduhub123/MonkeyXAssetBunldeBuilder
1. Tất cả config của phần build asset bundle được define ở : AsssetBundleBuilderData
public static AsssetBundleBuilderData configData = new AsssetBundleBuilderData();
Hiện tại gồm 2 config:
-
isSupportAward : xử lý data ảnh cho phần award
-
isGAF100PercentAlpha : xử lý lỗi alpha của animation GAF
//Sau này cần gì ae thêm vào đây nữa nhé.
2. Cách build có 2 cách :
a. Dùng cmd :
vd build bình thường :
"C:\Program Files\Unity\Hub\Editor\2022.1.10f1\Editor\Unity.exe" -projectPath "E:\project\MonkeyXAssetBunldeBuilder\AssetBunldeBuilder" -executeMethod CreateAssetBundles.BuildDataToBundles -batchmode -quit
vd build support phần award:
"C:\Program Files\Unity\Hub\Editor\2022.1.10f1\Editor\Unity.exe" -projectPath "E:\project\MonkeyXAssetBunldeBuilder\AssetBunldeBuilder" -executeMethod CreateAssetBundles.BuildDataToBundles -isSupportAward true -batchmode -quit
vd build support truyện gaf bị lỗi alpha:
"C:\Program Files\Unity\Hub\Editor\2022.1.10f1\Editor\Unity.exe" -projectPath "E:\project\MonkeyXAssetBunldeBuilder\AssetBunldeBuilder" -executeMethod CreateAssetBundles.BuildDataToBundles -isGAF100PercentAlpha true -batchmode -quit
b. Dùng unity editor:** Asset**/[Tên bên trên hàm đc define trong code]
vd : "Assets/1.BuildDataToBundles"
II. Giải thích chi tiết project
Input folder : Assets/DataFolder
Output folder : Thư mục Assets/StreamingAssets
*Lưu ý: Mỗi lần bỏ data mới vào nên clear data ở Input/Output.
Main:
Tất cả code hiện tại ở file : Editor/CreateAssetBundles.cs
Chỉnh 1 phần trong code lib GAF: GAF/[..]/Editor/GAFAssetPostProcessor.cs /GAFAssetPostProcessor
-
BuildDataToBundles -> Build các thư mục/files ở Input thành những bundle riêng lễ.
-
BuildDataTo1BundleFile -> Build toàn bộ thư mục/files trong Input thành 1 bundle duy nhất. Tên là data.bundle
-
Hàm BuildDataToBundlesProcessCommandLineArgs () dành cho đọc tham số lúc build bằng command line -> để xử lý bật tắt những cofig đính kèm.
-
GetAllCacheFilesForGAFFiles -> Hàm này để lấy những file cache sinh ra lúc build file GAF Animation -> nếu thiếu phần cache này thì GAF ko play được nhé. Path : Assets/GAF/Resources/Cache
-
ExcludeFileExtensions Loại bỏ những đuôi file ko cần thiết -> hiện tại có .meta và DS_store
-
CreateRenderTexture / CreateRenderTextureWithAssetGAFPath -> Tạo file Render Texture cho GAF Animation, phục vụ cho phần LRC là chủ yếu.
-
ChangeTextureSettingsForAward -> Hàm này để thay đổi thuộc tính của texture thành FullRect và cho quyền read/write vào texture.
-
ChangeGAFShader -> Để fix lỗi GAF Animation bị nhấp nháy -> play 1 shader của monkey tránh ảnh hưởng đến shader của GAF