cocos2d-x 异步加载plist,png等文件

cocos2d-x 异步加载plist,png等文件,第1张

概述1.png的异步加载 ? 1 2 Director::getInstance()->getTextureCache()->addImageAsync(reloadImages[curReloadImgNum],                  CC_CALLBACK_1(LoadingScene::imageAsyncCallback, this )); 2.plist和png一起的打包资源 废 1.png的异步加载

?

1 2 Director::getInstance()->getTextureCache()->addImageAsync(reloadImages[curReloadimgNum], CC_CALLBACK_1(LoadingScene::imageAsyncCallback, this ));



2.pList和png一起的打包资源

废话不多,直接上方法,没有加载pList的API,我们使用如1的方法加载png,然后在回调函数中加载pList。

?

1 2 Director::getInstance()->getTextureCache()->addImageAsync(reloadPLists[curReloadPListNum]+ "png" , CC_CALLBACK_1(LoadingScene::plistimageAsyncCallback, this ));



注意回调函数的参数,这是pList异步加载的关键,形参是png纹理。

?

1 2 3 4 5 6 voID LoadingScene::plistimageAsyncCallback(cocos2d::Texture2D* texture) { SpriteFrameCache::getInstance()->addSpriteFramesWithfile(reloadPLists[curReloadPListNum].append( "pList" ),texture); curReloadPListNum++; loading = true ; }



3.pList和pvr.ccz一起的打包资源

类似2的方法。

?

1 2 3 4 5 6 7 8 Director::getInstance()->getTextureCache()->addImageAsync(reloadPvrPLists[curReloadPvrPListNum] + "pvr.ccz" , CC_CALLBACK_1(LoadingScene::pvrPlistimageAsyncCallback, this )); voID LoadingScene::pvrPlistimageAsyncCallback(cocos2d::Texture2D* texture) { SpriteFrameCache::getInstance()->addSpriteFramesWithfile(reloadPvrPLists[curReloadPvrPListNum].append( "pList" ),texture); curReloadPvrPListNum++; loading = true ; }
4.Cocosstudio导出的.ExportJson后缀的动画文件

?

1 2 3 4 5 6 7 ArmatureDataManager::getInstance()->addArmaturefileInfoAsync(reloadExportJsons[curReloadExportJsonNum], this ,schedule_selector(LoadingScene::JsonAsyncCallback)); voID LoadingScene::JsonAsyncCallback( float f) { curReloadExportJsonNum++; loading = true ; }
总结

以上是内存溢出为你收集整理的cocos2d-x 异步加载plist,png等文件全部内容,希望文章能够帮你解决cocos2d-x 异步加载plist,png等文件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1052791.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-25
下一篇2022-05-25

发表评论

登录后才能评论

评论列表(0条)

    保存