必威体育Betway必威体育官网
当前位置:首页 > IT技术

AssetBundle的如何加载

时间:2019-09-08 12:43:19来源:IT技术作者:seo实验室小编阅读:72次「手机版」
 

asset

assets:  apk/assets

StreamingAssets : 这个文件夹   在   手机平台  一般是只读的,不可写,安卓打包到上麦呢的文件夹

persisten:这个路径,可读可写,程序第一次加载的时候会把  streamingassets  文件夹下面的东西写入这里

流程:

1,先把打的包从硬盘load到内存,用www加载

1.1assetbundle.unload(false)    只卸载内存文件

1.2assetbundle.unload(true)     卸载内存文件和assetbundle.load出来的文件

2,解包,assetbundle.load解压缩包

2.1resources.unloadasset(obj)  这个api  释放

2.2一些隐藏的文件(比如预设以来的材质和纹理)  就要用  Resources.unloadunusedasset()释放,

3,程序要使用  

3.1  如果是图片 这样的资源  assetbundle.load 出来的object直接使用

     同2.1

3.2如果是prefab,必须instantiate实例化一下,Destroy();

4 ,AssetBundle的依赖关系,在后缀是.manifest下

总的mainifest记录了所有的AssetBundle,每个都有各自的mainifest记录关系

加载的时候先加载依赖关系,后加载自身

卸载的时候先卸载自身,再卸载依赖

5,第一次load  obj A   用assetbundle.load

第二次load  objA  把这些东西缓存起来,从缓存里取

总结:

1,从mainifest文件中获取assetbundle依赖关系,

www  manifeset=new www(manifesetpath);

manifeset.assetbundle.loadasset("AssetBundleManifeset");参数是固定的,整个程序只会走一次

2,根据名称找到目标加载资源的所有依赖

Name包名  ----》scenesone/load.ld

主要为上层查找方便

3,根据依赖关系   加载资源

4,加载我们的assetbundle

www   bundle=new www(bundlePath);

5,加载资源

Assetbundle.Loadasset(resName);

Assetbundle.loadassetwithsubassets(resname);加载多个资源

  

1,加载资源

第一步 :

1,没有加载bundle    就执行 加载

把你这个命令 存起来 等我加载完全了  在返回给你

2,已经在加载 但是没有加载完全

把你这个命令 存起来 等我加载完全了  在返回给你

3, 已经加载并且完成

  就直接返回给上层

相关阅读

网站速度慢怎么优化?网站加载速度优化方法

5个优化页面加载速度提高SEO排名的最佳实践客户和用户总是在他们的手机上寻找信息 – 他们希望快速!对速度的需求推动了他们

深入理解@Autowired注解以及Spring加载Bean的机制

@Autowired注解在平时开发中用的非常的多,即自动装配,这些天碰到了一个与之相关的报错,所以打算深入理解其原理。 首先看看它的定

Assembly.Load()不能加载程序集的问题

在编程中,使用反射(IoC)是一个很好的架构。在.Net中,System.Reflection命名空间提供了对反射的支持。然而,很多朋友在使用Assembly.Loa

ExpandableListView 实现点击某个group的时候再去请求

整个项目虽然简单,我还是上传到github了,欢迎star https://github.com/MZCretin/SuperExpandableListView 昨天有个朋友问我有没

Android O Launcher3-Workspace加载

一.简述: Launcher这里我们研究主要是Launcher3(Android O平台),各个手机公司自家的ROM Launcher,咱们也看不到,但是八九不离十啦,他

分享到:

栏目导航

推荐阅读

热门阅读