(9)SpriteFrameCache和TextureCache】的更多相关文章

简介 SpriteFrameCache 主要服务于多张碎图合并出来的纹理图片.这种纹理在一张大图中包含了多张小图,直接通过TextureCache引用会有诸多不便,因而衍生出来精灵框帧的处理方式,即把截取好的纹理信息保存在一个精灵框帧内,精灵通过切换不同的框帧来显示出不同的图案. SpriteFrameCache SpriteFrameCache的内部封装了一个Map<std::string, spriteframe*=""> _spriteFrames对象.key为帧的名…
1. 概述 TextureCache是对Texture2D纹理的缓存,SpriteFrameCache是对SpriteFrame的缓存,每个SpriteFrame是对Texture2D的封装,Sprite是对Texture2D和SpriteFrame的封装,实现一张图片在屏幕上的变换. 2. Sprite 2.1 概述 Sprite是2d图像,是在屏幕上可变化的对象,受到控制. 通过对Sprite的操作,实现了一张图片在游戏屏幕上的各种变化. Sprite拥有一些属性,继承自父类Node,包括位…
转自泰然网(Cocos2d-x 3.x官方文档):精灵帧缓存:http://www.tairan.com/archives/6378/   纹理缓存: http://www.tairan.com/archives/6432/ 精灵帧缓存 简介 SpriteFrameCache 主要服务于多张碎图合并出来的纹理图片.这种纹理在一张大图中包含了多张小图,直接通过TextureCache引用会有诸多不便,因而衍生出来精灵框帧的处理方式,即把截取好的纹理信息保存在一个精灵框帧内,精灵通过切换不同的框帧来…
1.纹理控制. Sprite *pSprite = Sprite::create("background.png"); TexParams params = {GL_NEAREST,GL_NEAREST,GL_CLAMP_TO_EDGE, GL_CLAMP_TO_EDGE}; pSprite->getTexture()->setTexParameters(params); 上面最重要的函数就是setTexParameters();他就是根据ccTexParameters来控…
从2019年7月开始学习游戏引擎Cocos2dx,版本3.17. 学习笔记尽量以白话的形式表达自己对源码的理解,而不是大篇幅复制粘贴源码. 本人水平有限,欢迎批评指正! Cocos2d-x 学习笔记 ‎Cocos2d-x 学习笔记(3.1) Scene 场景与场景切换 ‎Cocos2d-x 学习笔记(3.2) TransitionScene 过渡场景和场景切换的过程 ‎Cocos2d-x 学习笔记(3.3) Layer ‎Cocos2d-x 学习笔记(4) Scheduler Timer 调度与…
根据官方文档与其他c++属性实现的类似书中示例: 图中的小人是会动的. 首先使用texturepacker制作出一张拼图,导出plist等文件: plist类似: 3.x的cocos似乎不再鼓励使用什么BatchNode等优化方式,官方支持的是SpriteFrameCache,类似TextureCache. 使用的方式是在某个位置加载plist文件,然后直接通过getSpriteFrameByName就可以获取SpriteFrame. 核心代码: bool SpriteScene::init()…
//获取精灵帧缓存的单例对象 auto  spriteFrameCache = SpriteFrameCache::getInstance(); //从plist文件添加多个精灵帧 spriteFrameCache->addSpriteFrameWithFile("XX.plist"); //根据图片名称创建一个精灵帧 auto sprite1Frame =spriteFrameCache->getSpriteFrameByName("xxx.png")…
bool HelloWorld::init() { ////////////////////////////// // 1. super init first if ( !Layer::init() ) { return false; } auto s = Director::getInstance()->getWinSize(); SpriteFrameCache::getInstance()->addSpriteFramesWithFile("grossini.plist&quo…
大家都知道一个游戏里面会有大量的图片,每一个图片渲染是须要时间的,以下分析两个类来加快渲染速度,加快游戏执行速度          一.SpriteBatchNode          1.先说下渲染批次:这是游戏引擎中一个比較重要的优化指标,指的是一次渲染凋用. 也就是说,渲染的次数越少,游戏的执行效率越高. 2.SpriteBatchNode就是cocos2d-x为了减少渲染批次而建立的一个专门管理精灵的类. 有人会问.怎么高速知道究竟渲染了多少次了.告诉你吧,游戏左下角有三行数据:    …
----我的生活,我的点点滴滴! ! 大家都知道一个游戏里面会有大量的图片.每一个图片渲染是须要时间的,以下分析两个类来加快渲染速度.加快游戏执行速度 一.SpriteBatchNode 1.先说下渲染批次:这是游戏引擎中一个比較重要的优化指标,指的是一次渲染凋用.也就是说.渲染的次数越少,游戏的执行效率越高.怎么看这个次数了?GL calls的值,以下会讲到. 2.SpriteBatchNode就是cocos2d-x为了减少渲染批次而建立的一个专门管理精灵的类. 有人会问,怎么高速知道究竟渲染…