public AssetBundleRes(string assetName) { mPath = ResKitUtil.FullPathForAssetBundle(assetName); Name = assetName; State = ResState.Waiting; }
static void BuildAssetBundles() { var outputPath = Application.streamingAssetsPath + "/AssetBundles/" + ResKitUtil.GetPlatformName(); if (!Directory.Exists(outputPath)) { Directory.CreateDirectory(outputPath); } BuildPipeline.BuildAssetBundles(outputPath, BuildAssetBundleOptions.ChunkBasedCompression, EditorUserBuildSettings.activeBuildTarget); AssetDatabase.Refresh(); }
public void Load() { if (ResMgr.IsSimulationModeLogic) { #if UNITY_EDITOR var assetBundleNames = UnityEditor.AssetDatabase.GetAllAssetBundleNames(); foreach (var assetBundleName in assetBundleNames) { var dependencyBundleNames = UnityEditor.AssetDatabase.GetAssetBundleDependencies(assetBundleName, false); var assetBundleData = new AssetBundleData { Name = assetBundleName, dependencyBundleNames = dependencyBundleNames }; var assetPaths = UnityEditor.AssetDatabase.GetAssetPathsFromAssetBundle(assetBundleName); foreach (var assetPath in assetPaths) { var assetData = new AssetData() { Name = assetPath.Split('/').Last().Split('.').First(), OwnerBundleName = assetBundleName }; assetBundleData.AssetDataList.Add(assetData); } AssetBundleDatas.Add(assetBundleData); } #endif } else { var maniBundle = AssetBundle.LoadFromFile(ResKitUtil.FullPathForAssetBundle(ResKitUtil.GetPlatformName())); mManifest = maniBundle.LoadAsset <AssetBundleManifest>("AssetBundleManifest"); } }