下面分2點來說:
1、
時間消耗點:io和現場解析
解決方案:加載過的骨骼動畫就不要每次重新加載,不要每次都去加載json文件和atlas,我推薦使用
static CCSkeletonAnimation* createWithData (SkeletonData* skeletonData)
這就需要你把解析SkeletonData數據保存起來。
static CCSkeletonAnimation* createWithFile (const char* skeletonDataFile, Atlas* atlas, float scale = 1);
這個方法又要加載文件又要現場解析atlas和json,所以會慢很多。
2、
時間消耗點:Json解析。
解決方案:盡量共用骨骼(json是骨骼描和動畫描述文件,altas是圖集文件)文件,也就是盡量讓多個atlas對應同一個json,但是這個度要自己掌握,json文件大小不要超過2mb。然后把這個json預解析,這就需要我們創建一個新的方法,把這個
SkeletonData* SkeletonJson_readSkeletonData (SkeletonJson* self, const char* json)
改成
SkeletonJson_readSkeletonDataWithJson(SkeletonJson* self, Json* json)
你解析好的Json從哪里來,那就要用
Json_create()
需要注意的是:要適時dispose數據