在有关 AssetBundle 工作流程的文档中,我们有一个代码示例将三个参数传递给 BuildPipeline.BuildAssetBundles 函数。让我们深入了解一下这方面。
using UnityEditor;using System.IO;public class BuildAssetBundle{//在主菜单中增加选项[MenuItem("Asset Bundles/Build AssetBundles")]static void BuildAllAssetBundles(){//要创建的文件夹名称string dir = "AssetBundles";//如果不存在该文件夹则新建它if (Directory.Exists(dir) == false){Directory.Create...
using System.IO; using CatAsset.Runtime; using UnityEditor; using UnityEditor.Build.Pipeline; using UnityEditor.Build.Pipeline.Injector; using UnityEditor.Build.Pipeline.Interfaces; using UnityEngine; namespace CatAsset.Editor { /// /// 写入缓存文件 /// public class WriteCacheFile : IBuildT...
首先需要将需要打包的资源添加到AssetBundle中,然后通过BuildPipeline.BuildAssetBundles方法将这些资源打包成AssetBundle文件。可以通过设置BuildAssetBundleOptions参数来指定打包的选项,如是否压缩、是否包含依赖资源等。 public class AssetBundleBuilder : Editor { [MenuItem("Assets/Build AssetBundles")] static void BuildA...
*接口统一:尽管SceneBundle和AssetBundle在早期的Unity版本中是不同的打包方式,但随着Unity的发展,它们的打包接口已经被统一为BuildAssetBundles接口。 *灵活性:由于BuildAssetBundles接口的灵活性,开发者可以根据项目需求在同一个项目中同时使用SceneBundle和AssetBundle,以实现更精细的资源管理和加载控制。
AssetDatabase.RemoveAssetBundleName(abNameArr[i],true); 3.创建ab目录 4.根据配置把需要打包的资源找出来,对每一个setAbName 5.调用BuildPipeline.BuildAssetBundles(ab文件夹路径,BuildAssetBundleOptions.DeterministicAssetBundle,EditorUserBuildSettins.activeBuildTarget); ...
BuildAssetBundles(string outputPath,BuildAssetBundleOptions assetBundleOptions,BuildTatget targetPlarform); 下面新建一个PackBundles.cs脚本 放入Editor文件夹中 代码如下 using System.Collections.Generic; using System.IO; using UnityEditor; public class PackBundles : Editor { //选定资源打包 [MenuItem("Pack...
unity资源打包的接口,就是BuildPipeline.BuildAssetBundles函数,其对应具体的三个参数,第一个是bundle的输出路径,下面来详细分析一下剩下的2个参数: 1、BuildAssetBundleOptions 具体的参数设置,可以参看API当中的详细信息,下面主要集中说三个参数,分别对应三种压缩格式的选择。
public class ExportAssetBundles { [MenuItem("Assets/Build AssetBundle From Selection - Track dependencies")] static void ExportResource () { // Bring up save panel string path = EditorUtility.SaveFilePanel ("Save Resource", "", "New Resource", "unity3d"); ...
public static AssetBundleManifest BuildAssetBundles(string outputPath, BuildAssetBundleOptions assetBundleOptions, BuildTarget targetPlatform); //Build AssetBundles from a building map. //构建资源,通过传入的构建列表。(通过纯代码配置) public static AssetBundleManifest BuildAssetBundles(string outputPath, AssetB...