unity资源打包
最近因项目过大研究了下unity资源打包
每个平台打的包不能混着使用,Android、iOS、Windows需要分别打包
打包方法如下,可直接复制使用
public class CreataAssetBundle {
[MenuItem ("AssetBundle/Create AndroidAssetBundle")]
public static void BuildAndroidAllAssetBundles ()
{
Bundle(BuildTarget.Android, "AndroidBundles");
}
[MenuItem ("AssetBundle/Create IosAssetBundle")]
public static void BuildIosAllAssetBundles ()
{
Bundle(BuildTarget.iOS, "iOSBundles");
}
[MenuItem("AssetBundle/Create Windows64")]
public static void BuildIosAllAssetBundlesWindows64()
{
Bundle(BuildTarget.StandaloneWindows64, "Windows64");
}
/// <summary>
/// 打包平台
/// </summary>
/// <param name="Platform"></param>
/// <param name="path"></param>
private static void Bundle(BuildTarget Platform, string path)
{
string assetBundlePath = Application.streamingAssetsPath + "/" + path;
if (Directory.Exists(assetBundlePath))
{
Directory.Delete(assetBundlePath, true);
}
Directory.CreateDirectory(assetBundlePath);
AssetDatabase.Refresh();
BuildPipeline.BuildAssetBundles(assetBundlePath, BuildAssetBundleOptions.ChunkBasedCompression, Platform);
}
}
在unity里就可以看见AssetBundle按钮,里面有对应平台打包方法
点击任意按钮就可以打包了,有童鞋就会在想,我就看见屏幕一闪,我们打包的资源在什么地方呢?
其实物品们打包的资源就放在StreamingAssets目录下在
其中AndroidBundles.manifest文件可以用于资源版本效验,实现资源小版本更新
今天就写在这里,有不懂的可联系我 tutuyier666@gmail.com