【独立开发者er Cocos2d-x实战 004】使用Cocos2dx加载plist文件

【独立开发者er Cocos2d-x实战 004】使用Cocos Studio制作plist文件中,我们已经知道如何制作plist,接下来就说说如何使用和加载plist文件。
代码如下:
CCSpriteFrameCache * cache = CCSpriteFrameCache::sharedSpriteFrameCache();
cache->addSpriteFramesWithFile("Plist.plist");

CCSprite *room = CCSprite::createWithSpriteFrameName("5.png");
room->setPosition(ccp(100, 100));
addChild(room);

return true;
从Resources目录下可以,我们并不存在5.png图片,所以用plist的好处就是可以减少内存的损耗。我们可以将多张图片组成一个合图,然后创建一个精灵帧缓存,这样我们就可以直接使用plist中的png文件名进行创建精灵等。特别需要注意的是需要使用createWithSpriteFrameName进行创建精灵,而不是create,。因为后者因为找不到资源返回空,当调用room->setPosition就崩溃

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-12-26 12:11:02

【独立开发者er Cocos2d-x实战 004】使用Cocos2dx加载plist文件的相关文章

【独立开发者er Cocos2d-x实战 003】使用Cocos Studio制作plist文件

在[独立开发者er Cocos2d-x实战 002]使用Cocos Studio创建帧动画中,我们已经知道如何创建帧动画,接下来就说说如何进行plist文件的制作/生成. 步骤如下: 创建一个工程CAnimal: 新建一个文件,类型选择合图: 导入图片资源: 合图导出: 查看合图文件: 查看文件: 温馨提示:我们将鼠标方法合图中的小图片上,就会显示图片名,如下: 版权声明:本文为博主原创文章,未经博主允许不得转载.

【独立开发者er Cocos2d-x实战 008】BMFont生成位图字体工具和Cocos2dx使用加载fnt文件

1.首先我们需要下载并且安装BMFont工具,下载地址如下:http://download.csdn.net/detail/chenqiai0/8899353(里面还有详细的使用文档,如果使用中有什么不明白请留言). 2.安装后,打开BMFont,界面如下,右边的列表是字体库 3.创建一个txt文件,然后输入你用到的文字(注意:保存的时候要用utf-8,否则软件无法识别) 4.接下来的操作请大家下载上述资源,然后按照pdf中讲解的步骤操作,肯定可以实现fnt文件的导出. 注意:需要我们注意的是在

【独立开发者er Cocos2d-x实战 006】使用Cocos2dx 实现截图功能

今天台风"灿鸿"来袭,博主默默在家码代码.废话不多说,今天我们要讲的就是截图. Cocos2dx把不同版本实现截图方式不同,我用的是Cocos2dx3.4版本.如果你的版本是Cocos2dx3.2以后的,都是可以用这个方式的,如果是Cocos2dx3.2以前,请参考: 比较Cocos2d-x v2.x与v3.x的截图功能 Cocos2d-x3.1及3.2实现截屏功能 cocos2dx之保存截屏图片 开门见山,直接上代码: const std::string strPath = &quo

【独立开发者er Cocos2d-x实战 001】csb文件导出和加载

使用cocos studio进行资源文件导出: 然后在cocos工程中进行加载csb文件: auto myLayout = CSLoader::createNode("/res/Desktop/Layer.csb"); addChild(myLayout); 运行时遇到一个问题-- cocos studio编辑和cocos2dx运行不一致: 上述问题是由于exe文件找不到资源,后来发现我们需要将相关的资源copy到Resources目录下, 同时白色字体的解决方法是在cocos stu

Unity开发实战探讨-资源的加载释放最佳策略简要心得

Unity开发实战探讨-资源的加载释放最佳策略简要心得 看过我另外一篇关于Unity资源释放随笔<Unity开发实战探讨-资源的加载释放最佳策略>如果觉得略微复杂,那么下面是一些比较简要的心得体会: 概括 常用资源加载的方法有三种:静态,Resources内部资源,AssetBundle外部资源 资源释放的方式 有二种:立刻释放和统一释放. 静态 静态就是资源直接放场景,静态资源无法立刻释放,但场景关闭由引擎统一释放,开发者无法干预,所以最为无脑. 但静态过于死板,除了整个场景生命周期中必须使

Oracle Bigdata Connector实战1: 使用Oracle Loader加载HDFS文件到Oracle数据库

部署jdk/Hadoop/OraLoader软件包 将准备好的软件包,逐一解压到hadoop用户home目录下: hadoop-2.6.2.tar.gz jdk-8u65-linux-x64.gz oraloader-3.4.0.x86_64.zip Hadoop软件部署如下: ├── hadoop-2.6.2 ├── jdk1.8.0_65 ├── oraloader-3.4.0-h2 设置环境变量 export JAVA_HOME=/home/hadoop/jdk1.8.0_65 expor

[Ext JS 4] 实战之Load Mask(加载遮罩)的显示与隐藏

前言 Load Mask(遮罩)效果,就是在页面还没有完全显示出来之前, 加上一个转装转的效果. 类似: 添加这样的效果有两个好处: 1. 在页面没完全show出来之前, 把后面的页面给遮罩起来, 防止进行一些非法的操作. 2. 如果页面show出来的时间比较长的话, 可以暂时吸引用户的注意力(也就是提高 User Experience). 在Extjs 中, Ext js 的使用方式有多种. 你有可能会发现为什么有的状况下load mask 不出现?  且听下面一一道来... JsonStor

【JAVAWEB学习笔记】网上商城实战2:异步加载分类、Redis缓存分类和显示商品

网上商城实战2 今日任务 完成分类模块的功能 完成商品模块的功能 1.1      分类模块的功能: 1.1.1    查询分类的功能: 1.1.2    查询分类的代码实现: 1.1.2.1  创建表: CREATE TABLE `category` ( `cid` varchar(32) NOT NULL, `cname` varchar(20) DEFAULT NULL, PRIMARY KEY (`cid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 1

【独立开发者er Cocos2d-x实战 012】Cocos2dx 2.2.6 CCTableView和CCTableViewCell详解

首先抛出一个问题:TableView一个Cell存在多个数据源(例如:Sprite),那应该如何区分点击的是哪一个精灵. 如果对上述描述还是不明白的朋友,请见详细描述:请点击. 如果大家使用现有的Cocos2dx实现,个人感觉是行不通的,因为Cocos2dx认为一个Cell就是一个点击,但是我们现在需要的是一个Cell存在多数据源,这样就需要我们自定义TableView和TableViewCell. 首先我创建三个自定义的类: class MyCustomCell: public CCSprit