Unity项目的图片如何打包在安卓平台

1.使用了AssetBundle进行打包,首先建立一个文件夹Editor,这是一个特殊的文件夹,创建AssetBundle的类必须放在里面。这里是讲数据打包到Assets/StreamingAssets的文件夹下

代码如下

using UnityEditor;
using System.IO;

public class CreateAssetbundles
{

    [MenuItem("AssetsBundle/Build AssetBundles")]
    static void BuildAllAssetBundles()//进行打包
    {
        string dir = "Assets/StreamingAssets";
        //判断该目录是否存在
        if (Directory.Exists(dir) == false)
        {
            Directory.CreateDirectory(dir);//在工程下创建AssetBundles目录
        }
        //参数一为打包到哪个路径,参数二压缩选项  参数三 平台的目标
        BuildPipeline.BuildAssetBundles(dir, BuildAssetBundleOptions.None, BuildTarget.Android);
    }
}

2.设置图片的AssetBundle的名称,图片是girl和cat,设置的AssetBundle的名称都是test

3.点击这里的AssetsBundle--Build AssetBundles按钮,即可将上面的图片进行打包,名称为test

 打包结果如下

4.读取AssetsBundle里面的图片,加载出来。

如果是电脑端读取,路径如下

        AssetBundle ab;
        ab=AssetBundle.LoadFromFile("Assets/StreamingAssets/test");
        

        Texture2D tex = ab.LoadAsset<Texture2D>("girl.jpg");

如果是安卓端读取图片,路径应该为,图中两种路径都可以,Application.dataPath + "!assets/test"和Application.streamingAssetsPath + "/test"


        AssetBundle ab;
        ab = AssetBundle.LoadFromFile(Application.dataPath + "!assets/test");
        //ab = AssetBundle.LoadFromFile(Application.streamingAssetsPath + "/test");
        Texture2D tex = ab.LoadAsset<Texture2D>("girl.jpg");

5.图片我设置的格式是默认的,读出来就是Texture2D格式,可以转为sprite格式。

 

参考Unity资源打包之Asset Bundle - 简书 (jianshu.com)

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值