Cocos2d-x之CCSpriteFrameCache 通过帧的方式加载一张大图
2013-08-03 04:47
423 查看
原文地址:http://blog.linguofeng.com/archive/2012/10/16/cocos2d-x-CCSpriteFrameCache.html
配合plist文件加载一张大图片中的某个区域
<plist version="1.0">
<dict>
<key>texture</key>
<dict>
<key>width</key>
<integer>图片的宽度</integer>
<key>height</key>
<integer>图片的高度</integer>
</dict>
<key>frames</key>
<dict>
<key>每帧的键值,使用spriteFrameByName获取</key>
<dict>
<key>x</key>
<integer>X坐标</integer>
<key>y</key>
<integer>Y坐标</integer>
<key>width</key>
<integer>宽</integer>
<key>height</key>
<integer>高</integer>
<key>offsetX</key>
<real>X坐标偏移</real>
<key>offsetY</key>
<real>Y坐标偏移</real>
<key>originalWidth</key>
<integer>原宽</integer>
<key>originalHeight</key>
<integer>原高</integer>
</dict>
</dict>
</dict>
</plist>
使用CCSpriteFrameCache载入plist与图片CCSpriteFrameCache* cache =CCSpriteFrameCache::sharedSpriteFrameCache();
cache->addSpriteFramesWithFile("plist文件","图片");
CCSprite::spriteWithSpriteFrame(cache->spriteFrameByName("plist中定义的key的键值"));
CCSprite::spriteWithSpriteFrameName("plist中定义的key的键值");// 直接也可以// 使用完以后记得清空释放内存
CCSpriteFrameCache::sharedSpriteFrameCache()->removeUnusedSpriteFrames();// 根据plist清空对应的图片
CCSpriteFrameCache::sharedSpriteFrameCache()->removeSpriteFramesFromFile("plist文件");
配合plist文件加载一张大图片中的某个区域
.plist格式<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>texture</key>
<dict>
<key>width</key>
<integer>图片的宽度</integer>
<key>height</key>
<integer>图片的高度</integer>
</dict>
<key>frames</key>
<dict>
<key>每帧的键值,使用spriteFrameByName获取</key>
<dict>
<key>x</key>
<integer>X坐标</integer>
<key>y</key>
<integer>Y坐标</integer>
<key>width</key>
<integer>宽</integer>
<key>height</key>
<integer>高</integer>
<key>offsetX</key>
<real>X坐标偏移</real>
<key>offsetY</key>
<real>Y坐标偏移</real>
<key>originalWidth</key>
<integer>原宽</integer>
<key>originalHeight</key>
<integer>原高</integer>
</dict>
</dict>
</dict>
</plist>
使用CCSpriteFrameCache载入plist与图片CCSpriteFrameCache* cache =CCSpriteFrameCache::sharedSpriteFrameCache();
cache->addSpriteFramesWithFile("plist文件","图片");
CCSprite::spriteWithSpriteFrame(cache->spriteFrameByName("plist中定义的key的键值"));
CCSprite::spriteWithSpriteFrameName("plist中定义的key的键值");// 直接也可以// 使用完以后记得清空释放内存
CCSpriteFrameCache::sharedSpriteFrameCache()->removeUnusedSpriteFrames();// 根据plist清空对应的图片
CCSpriteFrameCache::sharedSpriteFrameCache()->removeSpriteFramesFromFile("plist文件");
相关文章推荐
- Cocos2d-x--使用CCSpriteFrameCache,CCAnimationCache预加载资源
- Cocos2d-x--使用CCSpriteFrameCache,CCAnimationCache预加载资源
- cocos2d-X 节点(CCSpriteFrameCache.h)API
- cocos2d-x【小菜在学习】如何增加光晕效果以及CCSpriteFrameCache使用
- cocos2d-x 详解之 CCSprite(精灵)- “CCSpriteBatchNode”和“CCSpriteFrameCache”
- 预加载+CCSpriteBatchNode + CCSpriteFrameCache
- cocos2d-x 详解之 CCSprite(精灵)- “CCSpriteBatchNode”和“CCSpriteFrameCache”
- 预加载+CCSpriteBatchNode + CCSpriteFrameCache
- Cocos2d加载图片的方式
- Cocos2d-x SpriteFrameCache的使用
- 38-UI基础常见问题(UIButton和UIImage区别,UIImage两种加载方式区别,frame,bounds,center作用和区别)
- 通过CSS切换图片效果,点击这个图片可以实现连接功能,这里的图片在一张大图片中,每个并要切换的图片没有切换,通过disposition定位的方式做
- cocos2d-x 动画详解之三CCSpriteFrame
- cocos2d-x 通过python模板方式新建支持lua的工程
- 通过代理Activity模式,以移花接木的方式,加载sd卡目录下的apk界面
- 加载图片优化(先用一张小图片做高斯模糊, 再加载大图)
- 在命令行下编译通过,运行时提示错误:找不到或无法加载主类的原因分析与解决方式
- CCSpriteFrameCache的用法(转)
- utils/CCSpriteFrameCacheHelper
- GridView初始时加载一张图片,点击后加载另外一张大图