Tiled Map(瓦片地图)

Legendof19912014-06-12 14:57:28383 次阅读

Tiled Map(瓦片地图)编辑器的使用,详见:http://blog.csdn.net/legendof1991/article/details/22289857

1. TMX瓦片地图格式

cocos2d-x支持Tiled所创建的地图文件(TMX)。

2. 地图定向(Orientation)

Orthogonal maps 直角鸟瞰地图(90°地图) 
Isometric maps 等距斜视地图(斜45°地图) 
Hexagonal maps 六边形地图(左右或上下边界的六边形地图不被Tiled支持)

3. 地图形式(Tiles)

被嵌套的瓦片地图不被支持(如 使用瓦片素材组与其他图片)
仅支持封装瓦片地图组(仅有瓦片素材组被导入地图文件)
每个Layer最多支持1套瓦片素材组。

4. 地图层(Layers)

Tiles中Layer的数量没有上限。
每一个Layer可以被CCTMXLayer类表示( 为CCSpriteSheet的子类)
每一个单一的瓦片被CCSprite表示(父节点为CCTMXLayer)

5. 对象组(Object Groups)

瓦片地图支持对象组

6. 坐标(Coordinates)和全局标识(GIDS)

(1)坐标

64*32的Tiled瓦片地图文件的坐标系统为:

(0,0):左上角

(63,31):右下角

(2)全局标识(GIDS)

瓦片的GID是一个全局标识量,它的范围从正整数1开始,到瓦片地图中的tile的总量。

如果你的地图中有5个不同的瓦片,那么:

瓦片0的GID为1

瓦片1的GID为2

瓦片2的GID为3

以此类推

如果瓦片的GID为0,表示该瓦片为空。

(3)建立一个TMX节点

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// create a TMX map
CCTMXTiledMap *map = CCTMXTiledMap::create( "TileMaps/iso-test-vertexz.tmx" );
addChild(map, 0, kTagTileMap);
// All the tiles by default will be aliased. If you want to create anti-alias tiles, you should do:
// iterate over all the "layers" (atlas sprite managers)
// and set them as 'antialias'
CCArray * pChildrenArray = map->getChildren();
CCSpriteBatchNode* child = NULL;
CCObject* pObject = NULL;
CCARRAY_FOREACH(pChildrenArray, pObject)
{
         child = (CCSpriteBatchNode*)pObject;
         if (!child)
             break ;
         child->getTexture()->setAntiAliasTexParameters();
}

(4)获取/添加/删除/修改一个瓦片

指定坐标获取Tile:

1
2
3
CCTMXLayer* layer=map->layerNamed( "Layer 0" );
CCSprite* tile0=layer->tileAt(ccp(1,63));

指定坐标获取GID:

1
unsigned int m_gid=layer->tileGIDAt(ccp(0,63));

指定坐标设置一个新的GID

1
2
3
layer->setTileGID(m_gid,ccp(( float )3,( float )3);
// To remove a tile at a certain coordinate
layer->removeTileAt(ccp(5.0,5.0));

Tiled Map(瓦片地图)相关推荐

  1. 【日常点滴016】python游戏库arcade结合Tiled map editor地图编辑器和Pymunk物理引擎制作游戏过程记录,并最终打包为exe文件

    独此一家,建议收藏 前言 一.创建一个空白窗口 step001.py代码示例 二.创建很多全局能用的常量 step002.py代码示例 三.创建实例变量即代表各种精灵等的变量 step003.py代码 ...

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

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

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

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

  4. 瓦片地图 cocos

    [前言] 还记得我们小时候玩的小霸王里面的游戏吗?大部分都是基于Tile地图的游戏,如坦克大战.冒险岛.魂斗罗.吞食天地等.而在手游中,基于瓦片地图的游戏也很常见.如:<保卫萝卜>. 瓦片 ...

  5. Cocos2d-x 3.x基础学习:瓦片地图TiledMap

    有谁还记得小时候玩的小霸王里的游戏?比如坦克大战.冒险岛.魂斗罗.吞食天地等,他们大部分都是基于Tile地图的游戏.但在手游中,基于瓦片地图的游戏很常见.如:<保卫萝卜>. 瓦片地图有专门 ...

  6. 【Cocosd2d实例教程三】Cocos2d瓦片地图的导入

    (转载请注明出处:http://blog.csdn.net/buptgshengod)    上一节讲了如何使用Tiled制作瓦片地图,下面讲一下如何将地图导入游戏中.     第一步:将生成的文件导 ...

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

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

  8. 斜45度瓦片地图(Staggered Tiled Map)里的简单数学

    瓦片地图(Tiled Map)系列文章: 斜45度瓦片地图(Staggered Tiled Map)里的简单数学 瓦片地图注意事项 前段时间在做游戏的地图编辑功能,我们是在一个斜45度视角的场景上,对 ...

  9. Tiled 瓦片地图

    glory原创,首发于泰然,转载请注明出处 https://github.com/chukong/cocos-docs/blob/master/manual/framework/native/v3/t ...

最新文章

  1. mysql整理类型_Mysql 时间类型整理
  2. Android开发实践:以“专业”的态度处理多线程
  3. UML从需求到实现---类图(2)
  4. 详解在Linux下实现(彩色)进度条程序,并通过makefile进行编译.
  5. java迭代器 异常_java.util.NoSuchElementException在Java中使用迭代器
  6. 数猪第一名!推荐给你的朋友们!猪只盘点挑战赛Baseline分享
  7. java calendar_Java Calendar after()方法与示例
  8. MEGA | 多序列比对及系统发育树的构建
  9. 一下代码不符合php,各位帮我看看哪里错了一直提示错误,谢谢大家。可把代码复制一下...
  10. C中的extern-static-const关键词
  11. python实习目的_python爬虫系列---为什么要学习爬虫
  12. 【SQL】ROWNUM和ROWID
  13. MOVE降低高水位 HWM
  14. GB35114视频流处理
  15. [html] 你有使用过blockquote标签吗?说说它的用途有哪些?
  16. C++二进制数转十进制
  17. 什么是交叉(cross-over)网线?
  18. CS,四,组网及因特网
  19. 丧心病狂的Github技巧
  20. 可持续集成(devops)工具盘古入门指南

热门文章

  1. Suse linux 挂载OSSFS
  2. 天地图 通过H5 获取详细定位信息及marker(模板源码)
  3. ACM算法-----线段树模板
  4. 清美直通画室入学测试考试规则必读
  5. 逆向教程-游戏中的U3D付费模式分析
  6. android 为桌面图标添加数字角标
  7. Word简历中如何插入头像?
  8. ASO优化之海外应用的评分评论
  9. 适合女生玩的可爱网站
  10. Python高斯朴素贝叶斯算法问题总结