标签:list with creat 技术 pack color 游戏 命名 占用
如何创建一个精灵?
1. 使用一张特定的图像如创建
auto mySprite = Sprite::create("mySprite.png");
注意:蓝色部分是背景。
2. 使用矩形
auto mySprite = Sprite::create("mySprite.png", Rect(0, 0, 50, 50));
注意:蓝色部分是背景。
3. 使用图集
在使用图集时,首先将其全部加载到 SpriteFrameCache 中。
SpriteFrameCache 是一个全局的缓存类,缓存了添加到其中的 SpriteFrame 对象,提高了精灵的访问速度。
SpriteFrame 只加载一次,后续一直保存在 SpriteFrameCache 中。
可以用 TexturePackerGUI(有免费版)创建图集。
打包之后生成文件 xxx.plist 和 xxx.png:
其中每个 Speite 命名为 spritei(注意:i 为 1,2,3,4,5)。
如果忘记了各个精灵的命名怎么办?以记事本方式打开 xxx.plist 即可查看。
加载图集:
SpriteFrameCache::getInstance()->addSpriteFramesWithFile("sprites.plist");
4. 使用精灵缓存
从精灵的缓存对象 SpriteFrameCache 访问一个精灵有两种方法:
① 使用精灵名字进行创建:
auto mySprite2 = Sprite::createWithSpriteFrameName("sprite1.png");
② 先从缓存对象中获取对应的 SpriteFrame,然后用 SpriteFrame 创
建精灵
auto mySprite3 = Sprite::createWithSpriteFrame(SpriteFrameCache::getInstance()->getSpriteFrameByName("sprite2.png"));
5. 为何要使用图集和精灵缓存?
使用图集比使用多个独立图像占用的磁盘空间更少,还会有更好的性能。这种方式已经是游戏行业中提高游戏性能的标准方法之一。
还可以创建帧动画。
标签:list with creat 技术 pack color 游戏 命名 占用
原文地址:https://www.cnblogs.com/teternity/p/Cocos2dx__CreateSprites.html