AssetBundle
AssetBundle
1.打包
将要打包的资源在inspector中的预览窗口下设置要打包在AssetBundles下的路径和后缀名(可任意取)。新建一个C#脚本,脚本内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | using System.IO; using UnityEditor; public class CreateAssetBundles { [MenuItem( "Assets/Build AssetBundles" )] //生成菜单目录 static void BuildAllAssetBundles() { string assetBundleDirectory = "Assets/AssetBundles" ; //指定AssetBundles文件夹的目录 if (!Directory.Exists(assetBundleDirectory)) { Directory.CreateDirectory(assetBundleDirectory); //如果没有,则创建文件夹 } BuildPipeline.BuildAssetBundles(assetBundleDirectory, BuildAssetBundleOptions.None,BuildTarget.StandaloneWindows); } } |
2.读取
场景中物体上挂载一个脚本,脚本代码如下:
1 2 3 4 5 6 7 8 9 10 11 | using UnityEngine; public class LoadAssetBundle : MonoBehaviour { void Start() { AssetBundle bundle = AssetBundle.LoadFromFile( "Assets/AssetBundles/this/wall.ab" ); //找到AB包 GameObject cubeWall = bundle.LoadAsset<GameObject>( "CubeWall" ); //找到AB包中的物体 Instantiate(cubeWall); //实例化物体 } } |
运行后即可实例化物体。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了