cocos2d-x 3.3API 图片的相关加载

来源:互联网 发布:激活 知乎 编辑:程序博客网 时间:2024/05/01 23:08

贴一些关于精灵帧,精灵表的加载方式。

       图片加载


//方式一,直接用resouces中的图片加载//   auto a = Sprite::create("123.png");//   a -> setPosition(visibleSize.width/2,visibleSize.height/2);//   addChild(a);//方式二,精灵区域矩形图片加载,某个图片中的矩形区域//   auto b = Sprite::create("123.png",Rect(101,102,201,202));(101,102)为左上角坐标,(201,202)为图片的宽和高//*方式三,纹理缓存,加载入内存,从内存中读(使用精灵图集,一种优化方式,有利有弊)。//   Texture2D* cache = Director::getInstance()->getTextureCache()->addImage("123.png");//   auto c = Sprite::create();//   c -> setTexture(cache);//   c -> setTextureRect(Rect(101,102,103,104));   //(101,102)为左上角坐标(103,104)为图片的宽和高,plist文件可以有相关信息。//   c -> setPosition(144,144);//   addChild(c);//方式四,精灵帧缓存,SpriteFrameCache为单例的plist中为图片的坐标信息,后面的程序可以继续使用SpriteFrameCache::getInstance()->addSpriteFramesWithFile继续加载其它文件进内存若名字一样,则进行覆盖。//   SpriteFrameCache::getInstance()->addSpriteFramesWithFile("123.plist");//   auto d = Sprite::createWithSpriteFrameName("chuShou0003.png");//未命名-10001.png为大图中某小图的名字。☆不能为中文名//   d ->setPosition(visibleSize.width/3,visibleSize.height/3);//   addChild(d);





删除图片的一些操作

//指定具体精灵帧名移除//void removeSpriteFrameByName(const std::string &name);//指定清空精灵缓存。//void removeSpriteFrames()    //指定具体坐标文件移除精灵帧//void removeSpriteFramesFromFile(const std::string &plist)//移除没有使用的精灵帧//void removeUnusedSpriteFrames()



(持续修改中······)


0 0
原创粉丝点击