试着用TexturePacker将cocos2d-x 3.3里面的test素材图拿来做了大图。
虽然现在不知道怎么去应用这些素材,但是这是很重要的知识点。
个人理解:在游戏加载时,加载N张图片需要耗费很长的时间,如果将这N张图片拼接成1张大图,然后只加载1张大图,使用时通过N张小图所在的位置来从大图中截取,会大大降低资源消耗。
拼接n张png图片会生成1张png图片和1个plist文件。plist文件就是记录小图在大图中所在的位置。
主要代码:
//精灵帧缓存读取plist
SpriteFrameCache *sfc = SpriteFrameCache::sharedSpriteFrameCache();
sfc->addSpriteFramesWithFile("pic/sprites.plist");
//加载大图
auto sprites = SpriteBatchNode::create("pic/sprites.png");
sprites->setPosition(Point::ZERO);
this->addChild(sprites,1);
//从大图中截取小图创建精灵
auto s = Sprite::createWithSpriteFrameName("grossini_dance_01.png");
s->setPosition(Point(CCRANDOM_0_1() * 480, CCRANDOM_0_1() * 320));
this->addChild(s);