试着用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);