AssetBundle.CreateFromFile的有趣事情
有趣的事情发生了:
[@MenuItem("AssetBundles/Build AssetBundles")]
staticvoid BuildABs ()
{
AssetBundleBuild[] buildMap =
new AssetBundleBuild[];
buildMap [].assetBundleName ="test.assetbundle";//打包的资源包名称
string[] resourcesAssets =new
];//此资源包以下有多少文件
resourcesAssets [0] ="Assets/BuildABRes/test1.csv";
resourcesAssets [1] ="Assets/BuildABRes/test1.txt";
resourcesAssets [2] ="Assets/BuildABRes/test2.txt";
resourcesAssets [3] ="Assets/BuildABRes/test3.txt";
resourcesAssets [4] ="Assets/BuildABRes/test4.txt";
resourcesAssets [5] ="Assets/BuildABRes/test4/test4.txt";
resourcesAssets [6] ="Assets/BuildABRes/test1.xml";
buildMap [].assetNames = resourcesAssets;
BuildPipeline.BuildAssetBundles (Application.persistentDataPath +"/ABs", buildMap,
BuildAssetBundleOptions.UncompressedAssetBundle,
EditorUserBuildSettings.activeBuildTarget);
}
对以上文件进行打包后,打出的ab解出时会先对resourcesAssets进行排序。
string path =Application.persistentDataPath +
"/ABs/test.assetbundle";
//不能使用file://
Debug.Log (path);
AssetBundle ab =AssetBundle.CreateFromFile (path);
foreach (var ain ab.GetAllAssetNames()) {
Debug.Log (a);
}
TextAsset txt = ab.LoadAsset<TextAsset>
("test1.xml");
Debug.Log (txt.text);
LoadAsset(name) name能够使用三种方式, 1,fullname; 2, 带后缀的简称; 3,不带后缀的简称
那么上面的方法能够使用
1、ab.LoadAsset<TextAsset> (“Assets/BuildABRes/test1.xml”);
=>输出test1.xml的值
2、ab.LoadAsset<TextAsset> (“test1.xml");
=>输出test1.xml的值
3、ab.LoadAsset<TextAsset> (“test1”);
=>输出test1.csv文件的值
3之所以输出test.csv的值 是排序后的结果。以最先匹配到的文件为准
unity 编报认三种通用文本文件格式:txt,xml,csv
另外还认一种二进制文件格式:.bytes [lua,使用这样的方式 + + 加密]
除此之外的文本文件无法被unity打包。
AssetBundle.CreateFromFile的有趣事情的更多相关文章
- 关于linux创建用户的有趣事情!
小博主今天接受了一项光荣的任务!为什么说是光荣任务呢?因为这个任务是需要创建一个linux用户!!! 肯定有小伙伴要嘲笑了!创建一个用户有什么难的啊! 对!这个并不难,即使是小白也能轻松应对! 但是! ...
- salesforce零基础学习(一百一十)list button实现的一些有趣事情
本篇参考: salesforce零基础学习(九十五)lightning out https://developer.salesforce.com/docs/component-library/docu ...
- AssetBundle机制相关资料收集
原地址:http://www.cnblogs.com/realtimepixels/p/3652075.html AssetBundle机制相关资料收集 最近网友通过网站搜索Unity3D在手机及其他 ...
- Unity3D 5.3 新版AssetBundle使用方案及策略
1.概览 Unity3D 5.0版本之后的AssetBundle机制和之前的4.x版本已经发生了很大的变化,一些曾经常用的流程已经不再使用,甚至一些老的API已经被新的API所取代. 因此,本文的主要 ...
- [Unity AssetBundle]Asset资源处理
什么是AssetBundle 在很多类型游戏的制作过程中,开发者都会考虑一个非常重要的问题,即如何在游戏运行过程中对资源进行动态的下载和加载.因此,Unity引擎引入了AssetBundle这一技术来 ...
- AssetBundle使用心得【资源加载】
0.资源加载方式 静态资源 Asset下所有资源称为静态资源 Resources资源 Resources目录下,通过实例化得到的资源 AssetBundle资源 又称为增量更新资源 1.什么是Asse ...
- Assetbundle创建与加载
[Assetbundle创建与加载] Unity有两种动态加载机制:一种是Resource.Load.一种是AssetBundle.Assetbundle是Unity Pro提供的功能,它可以把多个游 ...
- (Unity4.7)assetbundle 坑爹总结
使用版本Unity4.7 一.关于依赖打包 1.当一个被打包的资源A引用了其他的资源B,并且没有被打成一个包时,要选用[BuildAssetBundleOptions.CollectDependenc ...
- unity-------------------Unity5.X 新版AssetBundle使用方案及策略
Unity5.X 新版AssetBundle使用方案及策略 1.概览 Unity3D 5.0版本之后的AssetBundle机制和之前的4.x版本已经发生了很大的变化,一些曾经常用的流程已经不再使 ...
随机推荐
- MySQL 出现 The table is full 的解决方法
原文链接: MySQL 出现 The table is full 的解决方法 浅谈MySql的存储引擎(表类型) MySQL 出现 The table is full 只有一个原因,对应的表数据容量达 ...
- 乐观锁&悲观锁
悲观&乐观,只是对数据加锁的时机与粒度. 悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这 ...
- Verilog中的标点
在Verilog中有时候会误用的上引号 1,define 中的 `define INITIAL 0 这个单引号用的是键盘左上角的那个单引号,其实就是一个小撇. 2,4'd0 这个 用的是才是叫真正的 ...
- jquery.zclip—复制剪贴板(兼容各大浏览器)
开始前说两句 WEB开发中,要让用户复制页面中的一段代码.URL地址等信息,为了避免用户拖动鼠标再进行右键复制操作而可能出现的差错,我们可以直接在页面中放置一个复制按钮,只需要轻轻一点这个复制按钮,内 ...
- 基于visual Studio2013解决算法导论之044最短路径
题目 最短路径 解决代码及点评 // 26最短路径dijstra.cpp : 定义控制台应用程序的入口点. // #include <iostream> using namespa ...
- 基于visual Studio2013解决C语言竞赛题之0603打印素数
题目
- 清华申请退学博士作品:完全用Linux工作,凸Windows
清华申请退学博士作品:完全用Linux工作 按尽管我们已经不习惯看长篇大论, 但我还是要说, 这是一篇值得你从头读到尾的长篇文章. 2005年9月22日,清华在读博士生王垠在水木社区BLOG上发表了& ...
- bootloader启动代码init.s解析----IRQ中断处理函数
bootloader启动代码init.s解析----IRQ中断处理函数 init.s源代码如下: ;///////////////////////////////////////////// ;opt ...
- Qt 无边框窗体改变大小 完美实现
近期,做项目用到无边框窗体,令人蛋疼的是无边框窗体大小的改变要像右边框那样,上下左右四周,而且要流畅. 网上也找了些代码,发现居然还要连接到windows事件,这显然不合常理,后来自己新建了demo, ...
- JAVA技术专题综述之线程篇(1)
本文详细介绍JAVA技术专题综述之线程篇 编写具有多线程能力的程序经常会用到的方法有: run(),start(),wait(),notify(),notifyAll(),sleep(),yield( ...