Cocos2d-x 3.2 异步动态加载 -- 保卫萝卜开发总结
2015-01-12 15:28
176 查看
这篇文章发现的有些晚了。其实,在此现在的视频课程“拇指接龙游戏”中,在创建通用型异步资源加载场景LoadingScene时就使用了其中的一部分。原文如下:
本章只分享一下异步加载的逻辑,如有不对的地方还望大家及时指出。
目前我代码中需要异步加载的资源一共有四类:
1.png,单个png的情况比较少
2.plist和png一起的打包资源
3.plist和pvr.ccz一起的打包资源
4.CocosStudio导出的.ExportJson后缀的动画文件
再重复一遍加载机制:所有的资源是按序加载的,不可同时加载多个文件。执行异步加载的处理肯定是写在void update(float f)中,做到按帧加载。
1.png的异步加载
这个没有什么可说的,在新的示例工程cpp-test中普遍使用。当然使用的是Cocos2d-x 3.x版本中有关表达。
2.plist和png一起的打包资源
废话不多,直接上方法,没有加载plist的api,我们使用如1的方法加载png,然后在回调函数中加载plist。
注意回调函数的参数,这是plist异步加载的关键,形参是png纹理。
3.plist和pvr.ccz一起的打包资源
类似2的方法。
4.Cocos Studio导出的.ExportJson后缀的动画文件
四种加载方法已经介绍完了,只要在update中做好按序加载就可以了。
如何优化内存,加载尽量少的资源?
我的这个场景叫LoadingScene,这是一个中转场景,既是切换两个场景之间的过渡场景,用来释放上一个场景的资源和预加载下一个场景资源。
在这个场景中,我们可以释放掉cache中的所有文件,然后根据下个场景的内容来加载所需的文件。 这就需要我们做好配置工作,比如保卫萝卜,下一关只有两种塔,我们只加载这两种塔的动画即可,而不需要所有塔全部加载。
还有一个小技巧关于异步加载exportJson的文件。这个异步加载,既可以加载动画缓存,还可以把跟它一起的plist和png一起加载到缓存中,所有如果想加载plist,也可以把它们到成静止的动画,然后使用exportJson加载即可使用里面的精灵。
本章只分享一下异步加载的逻辑,如有不对的地方还望大家及时指出。
目前我代码中需要异步加载的资源一共有四类:
1.png,单个png的情况比较少
2.plist和png一起的打包资源
3.plist和pvr.ccz一起的打包资源
4.CocosStudio导出的.ExportJson后缀的动画文件
再重复一遍加载机制:所有的资源是按序加载的,不可同时加载多个文件。执行异步加载的处理肯定是写在void update(float f)中,做到按帧加载。
1.png的异步加载
这个没有什么可说的,在新的示例工程cpp-test中普遍使用。当然使用的是Cocos2d-x 3.x版本中有关表达。
2.plist和png一起的打包资源
废话不多,直接上方法,没有加载plist的api,我们使用如1的方法加载png,然后在回调函数中加载plist。
注意回调函数的参数,这是plist异步加载的关键,形参是png纹理。
3.plist和pvr.ccz一起的打包资源
类似2的方法。
4.Cocos Studio导出的.ExportJson后缀的动画文件
四种加载方法已经介绍完了,只要在update中做好按序加载就可以了。
如何优化内存,加载尽量少的资源?
我的这个场景叫LoadingScene,这是一个中转场景,既是切换两个场景之间的过渡场景,用来释放上一个场景的资源和预加载下一个场景资源。
在这个场景中,我们可以释放掉cache中的所有文件,然后根据下个场景的内容来加载所需的文件。 这就需要我们做好配置工作,比如保卫萝卜,下一关只有两种塔,我们只加载这两种塔的动画即可,而不需要所有塔全部加载。
还有一个小技巧关于异步加载exportJson的文件。这个异步加载,既可以加载动画缓存,还可以把跟它一起的plist和png一起加载到缓存中,所有如果想加载plist,也可以把它们到成静止的动画,然后使用exportJson加载即可使用里面的精灵。
相关文章推荐
- Cocos2d-x 3.2 异步动态加载 -- 保卫萝卜开发总结
- Cocos2d-x 3.2 异步动态加载
- Cocos2d-x 3.2 异步动态加载
- cocos2dx3.2 异步加载和动态加载
- Cocos2d-x中异步动态加载图片或Plist文件
- 总结前端开发模式和规范 2、HTML5中script的async属性异步加载JS
- cocos2dx3.2 异步动态加载
- 近期的安卓学习开发SOS APP的一些总结文档 (拨打电话 加载首页图片的异步代码 判断是否有网络代码)
- Cocos2d-js 开发记录:图片数据资源等的异步加载
- arcgis server 9.3 ADF开发 CAD文件本地动态加载到graphicslayer中总结
- cocos2dx3.2 异步加载和动态加载
- 近期的安卓学习开发SOS APP的一些总结文档 (拨打电话 加载首页图片的异步代码 判断是否有网络代码)
- cocos2d-x 3.9 异步动态加载
- Cocos2d-js 开发记录:图片数据资源等的异步加载
- Winform开发框架之客户关系管理系统(CRM)的开发总结系列4-Tab控件页面的动态加载
- 【web开发 异步加载js】根据需求动态加载js脚本
- 用MVVM模式开发中遇到的零散问题总结(5)——将动态加载的可视元素保存为图片的控件,Binding刷新的时机
- WINCE流驱动的动态加载调试与用EVC快速开发WINCE的流驱动
- ASP.net 动态加载控件时一些问题的总结
- WINCE流驱动的动态加载调试与用EVC快速开发WINCE的流驱动