private static AssetBundleManifest BuildAssetBubdle(AssetBundleBuildDescriptor assetBundleBuildDescriptor) { string outputPath = assetBundleBuildDescriptor.OutputPath; AssetDatabase.RemoveUnusedAssetBundleNames(); EditorUserBuildSettings.SwitchActiveBuildTarget(assetBundleBuildDescriptor.Group, assetBundleBuildDescriptor.Target); DirectoryHelper.EnsureExist(outputPath); return(BuildPipeline.BuildAssetBundles(outputPath, assetBundleBuildDescriptor.Options, assetBundleBuildDescriptor.Target)); }
private static void Build(BuildTargetGroup group, BuildTarget target) { string bundleOutputPath = $"{AssetBundlePath}{target.ToString()}"; AssetBundleBuildDescriptor buildDescriptor = new AssetBundleBuildDescriptor { Group = group, Options = BuildAssetBundleOptions.ChunkBasedCompression, Target = target, OutputPath = bundleOutputPath }; FileDescriptor fileDescriptor = new FileDescriptor { Path = bundleOutputPath, Name = ResourceManifestFileName }; AssetBundleManifest manifest = BuildAssetBubdle(buildDescriptor); string resourceInfo = BuildAssetsManifest(manifest, fileDescriptor); Debug.Log(resourceInfo); FileHelper.WriteBytes(fileDescriptor.Path, fileDescriptor.Name, Encoding.UTF8.GetBytes(resourceInfo)); }