码迷,mamicode.com
首页 > 其他好文 > 详细

cocos2dx 2.2.1 骨骼动画释放

时间:2014-07-03 07:05:11      阅读:255      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   文件   os   io   

2.2.1中骨骼动画释放不完全,需要更改源码进行手动释放,释放方法不能放在析构函数和onExit()函数中。

第一步修改源码:文件位置:extensions/CocoStudio/Armature/utils/CCDataReaderHelper.cpp;

 if (pAsyncStruct->imagePath != "" && pAsyncStruct->plistPath != ""){
       pthread_mutex_lock(&s_GetFileDataMutex);                  
(删除)CCArmatureDataManager::sharedArmatureDataManager()->addSpriteFrameFromFile(pAsyncStruct->plistPath.c_str(), pAsyncStruct->imagePath.c_str());
(更改为)CCArmatureDataManager::sharedArmatureDataManager()->addSpriteFrameFromFile(pAsyncStruct->plistPath.c_str(), pAsyncStruct->imagePath.c_str(), pDataInfo->filename.c_str()); pthread_mutex_unlock(&s_GetFileDataMutex); } CCDataReaderHelper::addDataAsyncCallBack(float dt) { std::string configPath = pDataInfo->configFileQueue.front(); pthread_mutex_lock(&s_GetFileDataMutex); (删除)CCArmatureDataManager::sharedArmatureDataManager()->addSpriteFrameFromFile((pAsyncStruct->baseFilePath + configPath + ".plist").c_str(), (pAsyncStruct->baseFilePath + configPath + ".png").c_str()); (更改为)CCArmatureDataManager::sharedArmatureDataManager()->addSpriteFrameFromFile((pAsyncStruct->baseFilePath + configPath + ".plist").c_str(), (pAsyncStruct->baseFilePath + configPath + ".png").c_str(), pDataInfo->filename.c_str()); pthread_mutex_unlock(&s_GetFileDataMutex); pDataInfo->configFileQueue.pop(); }

第二步在删除骨骼动画的函数中调用:

        armature->removeFromParent();
        CCArmatureDataManager::sharedArmatureDataManager()->removeArmatureFileInfo("Armature/123/123.ExportJson");
        CCTextureCache::sharedTextureCache()->removeAllTextures();

骨骼动画释放完成。

 

 

cocos2dx 2.2.1 骨骼动画释放,布布扣,bubuko.com

cocos2dx 2.2.1 骨骼动画释放

标签:style   blog   color   文件   os   io   

原文地址:http://www.cnblogs.com/android-qian/p/3818506.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!