今天用cocos2d-1.0.1-x-0.9.2来测试tiled map的功能,结果发现翻转过的tile都不见了,调试代码发现原来代码里不支持,没有对x,y翻转作处理,结果翻转过的tile导致数值多大没有被现实出来。

( 注:最新的Tiled map已经支持flip x和flip y,选中tile按键盘上x键,y键即可,其他旋转功能他们正在添加中。。。最新版本可以从http://www.mapeditor.org/下载)

修改代码实现此功能,  CCTMXLayer.cpp文件里针对appendTileForGID方法作出修改,上代码:

         // used only when parsing the map. useless after the map was parsed// since lot's of assumptions are no longer trueCCSprite * CCTMXLayer::appendTileForGID(unsigned int gid, const CCPoint& pos){//lancer add for tile flip //setFlipXint flip = gid>>28;int tileid =  gid &0x0FFFFFFF;gid = tileid;//endCCRect rect = m_pTileSet->rectForGID(gid);rect = CCRectMake(rect.origin.x / m_fContentScaleFactor, rect.origin.y / m_fContentScaleFactor, rect.size.width/ m_fContentScaleFactor, rect.size.height/ m_fContentScaleFactor);int z = (int)(pos.x + pos.y * m_tLayerSize.width);if( ! m_pReusedTile ){m_pReusedTile = new CCSprite();m_pReusedTile->initWithBatchNode(this, rect);}else{m_pReusedTile->initWithBatchNode(this, rect);}m_pReusedTile->setPosition(positionAt(pos));m_pReusedTile->setVertexZ((float)vertexZForPos(pos));m_pReusedTile->setAnchorPoint(CCPointZero);m_pReusedTile->setOpacity(m_cOpacity);//lancer add for tile flip //setFlipXcocos2d::CCLog("---gid=%d, flip sign=%d, tileid=%d\n", gid, flip, tileid);
#define TILE_FLIP_X 8
#define TILE_FLIP_Y 4   if(flip & TILE_FLIP_X){cocos2d::CCLog("set flip x\n");m_pReusedTile->setFlipX(true);}if(flip & TILE_FLIP_Y){cocos2d::CCLog("set flip y\n");m_pReusedTile->setFlipY(true);}//end// optimization:// The difference between appendTileForGID and insertTileforGID is that append is faster, since// it appends the tile at the end of the texture atlasunsigned int indexForZ = m_pAtlasIndexArray->num;// don't add it using the "standard" way.addQuadFromSprite(m_pReusedTile, indexForZ);// append should be after addQuadFromSprite since it modifies the quantity valuesccCArrayInsertValueAtIndex(m_pAtlasIndexArray, (void*)z, indexForZ);return m_pReusedTile;}
 PS:转载请保留以下信息
Author:smilelance    
From:http://blog.csdn.net/smilelance

cocoa2d-x tiled map添加tile翻转功能相关推荐

  1. 在Tiled Map中使用碰撞检测

    转 [转载] 在Tiled Map中使用碰撞检测 2014年11月17日 01:46:51 阅读数:6721更多 个人分类: cocos2dx 网上这篇教程的转载非常泛滥,本来以为没什么参考价值.但是 ...

  2. [转载] 在Tiled Map中使用碰撞检测

    网上这篇教程的转载非常泛滥,本来以为没什么参考价值.但是当我实际用上 tiledmap 做点东西时,发现TiledMap软件本身,以及TMXTiledMap类的使用确实存在一些疑惑.所以,对于想真正使 ...

  3. 随机Tiled Map的生成

    背景 Tiled Map是一种利用地块儿元素拼接,构成2D或伪3D地图的技术.随机地图生成技术,则可以不依赖人力,通过程序产生大量的各不相同的游戏地图.当我们把这两种技术结合起来,就可以在游戏中提供大 ...

  4. html5地图编辑器,Tiled地图编辑器 Tiled Map Editor 的使用(一)基础功能+地形功能...

    看了很久关于 Tiled Map Editor 相关资料,但是网上的东西相对太少了,多日整理之后重新写一份吧 一方面是对自己学习的总结 另外也是和想入门的人做个分享. 首先是官网下载地址 http:/ ...

  5. Tiled地图编辑器 Tiled Map Editor 的使用(一)基础功能+地形功能

    看了很久关于 Tiled Map Editor 相关资料,但是网上的东西相对太少了,多日整理之后重新写一份吧 一方面是对自己学习的总结 另外也是和想入门的人做个分享. 首先是官网下载地址   http ...

  6. android 5.1中添加来电翻转静音的功能

    网上关于来电翻转静音的功能有很多实现,但大同小以异,下面主要记录以下几点: 1.settting中添加控制. 2.Dialer中添加具体的功能实现. 3.AudioManager实现完成静音. 首先, ...

  7. Tiled Map Editor 地图编辑器(一)基础功能+地形功能

    看了很久关于 Tiled Map Editor 相关资料,但是网上的东西相对太少了,多日整理之后重新写一份吧 一方面是对自己学习的总结 另外也是和想入门的人做个分享. 本文链接地址: [url]htt ...

  8. Tiled Map Editor(瓦片地图编辑器)的Java和QT版本区别

    尊重作者劳动,转载时请标明文章出处. 作者: Bugs Bunny 地址: http://www.cnblogs.com/cocos2d-x/archive/2012/05/03/2479469.ht ...

  9. tiled素材_瓦片地图 Tiled Map

    瓦片地图(Tiled Map) 瓦片地图(Tile Map) 不但生成简单,并且可以灵活的用于Cocos2d-x引擎.不论你的游戏是角色扮演游戏, 平台动作游戏或仿打砖块游戏,这些游戏地图可以使用开源 ...

最新文章

  1. AndroidStudio中下载某版本gradle速度慢,从哪里高速下载指定版本gradle
  2. requirejs的用法(二)
  3. Oracle掌管权限和角色
  4. XML中写注释的格式
  5. 判断拐点的条件_拐点的判断
  6. 论文学习笔记:Detecting and quantifying causal associations in large nonlinear time series datasets
  7. Android 敏感词过滤实现
  8. 在DeSmuME模拟器上成功运行AK2i的内核,破解AK2i命令集
  9. FireFox必备插件(七)
  10. EDG夺冠火爆全网,官网域名用的如何?
  11. DBA与项目的那堆事 ——目录
  12. C++初级主题--名字空间域和类域
  13. Python-冒泡排序函数
  14. idea条件断点和异常断点
  15. 默燃周报|音乐流平台 Emanate 将启用 NFT;WAX NFT 数量突破一百万
  16. C# 利用GraphicsPath 画螺旋桨控件
  17. 有关BlackBerry app 数字签名
  18. 泛微OA.E9--01--限制发起人每个月发起流程的次数
  19. 基于微信小程序的校园跑腿系统——计算机毕业设计
  20. 墙壁绘图机器人盘点,丰富家居生活!

热门文章

  1. 不能不知道的电源稳压器的选择
  2. 老师强制停计算机课违法吗,教育部紧急叫停“违规”的网课,你们的老师和学校做到这些了吗...
  3. 图片去水印软件哪个好用
  4. 数据库原理及应用教程(第4版|微课版)陈志泊-SQL Server2012综合练习
  5. CentOS Liunx 7 更换为阿里云的源
  6. 想低成本创业,有什么推荐项目吗?
  7. 转载 官场做人 学习一下.
  8. KiTTY及cnKiTTY中新的可用命令行选项的简单注释
  9. 大话数据结构-普里姆算法(Prim)和克鲁斯卡尔算法(Kruskal)
  10. 区块链技术被认为是第四次工业革命中最具颠覆性的创新技术