Starling做移动开发,会用到大量的纹理和图片素材、XML配置等文件,需要频繁使用AssetManager类加载和使用他们,有时如果获取素材时报错,不知道AssetManager类的调用顺序就会对调试造成困难。因为工作需要对AssetManager的内部加载流程做了一次跟踪调试,这里做一次记录和整理,以备他用。
AssetManager中,在调用enqueue方法向加载队列添加要加载的素材后,需要在最后调用loadQueue方法,所以也是从这里开始探索AssetManager的加载流程。因为期间使用了大量的函数变量,为了简便说明,将会根据各个函数的大写缩写给他们命名。
一、用到的方法
1、loadQueue方法(LQ)
方法中的几个函数变量构成整个流程所需的步骤,他们分别是:
loadQueueElement(LQE)
loadNextQueueElement(LNQE)
processXmls(PXS)
finish(F)
2、processRawAsset方法(PRA)
包含的函数变量:
process(P)
3、loadRawAsset方法(LRA)
包含的函数变量:
onUrlLoaderComplete(OULC)
onLoaderComplete(OLC)
complete(C)
4、addTextureAtlas(ATA)
5、addTexture(AT)
6、addXml(AX)
7、removeTexture(RT)
二、加载流程
1、加载纹理
LQ -> LQE -> PRA -> LRA -> OULC -> OLC -> C -> P -> AT -> LNQE -> PRA(next)
2、加载纹理XML配置
LQ -> LQE -> PRA -> LRA -> QULC -> C -> P(xmls.push) -> LNQE -> PRA(next)
3、加载其他文件
LQ -> LQE -> PRA -> LRA -> QULC -> C -> P -> P -> AX -> LNQE -> PRA(next)
加载其他文件的时候,在 P 方法中会因为传入的是二进制数据类型而调用 P 两次。
分享到:
相关推荐
Starling 中文帮助手册。Starling是基于Stage3D的轻量级框架。非常适合AS3程序猿。
Starling中文手册 找了很久的资源 对新手有很大的帮助 你值得拥有
资源包括 PDF文档 文档中对STARLING以及相关框架的介绍以及代码实例 内容包括AS3 项目源文件两个 包含PDF中提到的例子 以及运行效果SWF10个 在Stage3D出现之前,Flash3D引擎( Papervision3D, Away3D,…)都是软解 ...
通过该API,可以快速的对starling进行了解和入门
Starling 1.2 中文API帮助文档,来自天地会
Starling框架帮助手册中文版,。Starling是一个完全基于Flash Player的API开发的框架,它最大的好处在于你可以很快地写出使用GPU加速的应用程序而不必接触那些复杂的底层Stage3D API
Starling 预加载器在 Web 浏览器中运行的 SWF 应具有预加载器。 预加载器允许您快速显示图形和动画,以便您网页的访问者在加载 SWF 文件的其余部分时可以查看一些内容。 如何为 Starling 应用程序创建预加载器? 这...
starling中文版粒子下载
将Starling银行的CSV文件转换为Kashflow可以导入的文件 转换Starling Bank CSV格式以由Kashflow导入 动机我最近注册了Starling Bank商业帐户。 Kashflow本身并没有连接到Starling,这是一个巨大的麻烦。 尽管针对...
Starling框架中文教程。Starling框架是一个使用stage3D加速的二维游戏框架
在Starling中对载入的纹理进行9宫格缩放。
flash stage3D starling
Starling 是一个基于Stage3D所开发的一个能够使用GPU来加速的2D 框架。Starling主要是为游戏开发而设计的, 但是它的用途不仅限于此。Starling最大的好处在于你可以很快地写出使用GPU加速的应用程序而不必接触那些...
starling 图片旋转,消除锯齿,桌面应用
这个项目是“饥饿英雄”,是一个外国人写的基于as3语言中starling框架的项目,是学习starling的经典入门项目,学过starling的人都知道,需要使用flash builder 4.6或4.7打开。
Starling-Filters, 用于 Starling AS3框架的过滤器集合 starling滤波器用于与 AS3框架一起使用的过滤器集合。...对于 Starling 1.x,使用 archive 分支中的筛选器。演示应用程序( 不包括所有筛选器):
自己写的一个starling中应用BOX2D的一个Demo,里面包含box2D的鼠标关节,方块都是可以拿鼠标拖起来的
一个很不错的flash游戏基于starling
网上找到的starling任意形状遮罩,里面有DEMO,蛮好的:)
Starling,Features和StarlingMVC第三方库 【starling.swc】 【starlingmvc.swc】 【feathers.swc】