Tiled Map(瓦片地图)

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));
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明
cocos2d是一个流行的游戏开发引擎,而Tiled Map Editor是一个针对2D游戏开发的地图编辑器软件。这两者结合使用,可以帮助开发者更高效、便捷地制作游戏中的地图。 cocos2d引擎提供了丰富的功能和工具,用于创建2D游戏。而Tiled Map Editor则是用于制作游戏地图的工具。它提供了一个用户友好的界面,可以在里面创建、编辑和管理游戏地图。用户可以在Tiled Map Editor中自定义地图的大小、背景色、分块大小等属性。 在制作地图时,Tiled Map Editor允许用户在画布上绘制各种元素,如地面、墙壁、河流等。用户还可以在画布上放置各种可交互的物体,如玩家、敌人、道具等。这些元素和物体都可以通过Tiled Map Editor方便地进行定位、调整和编辑。 当地图制作完成后,开发者可以将其导出为某种格式,如XML或JSON。然后,cocos2d引擎可以读取这些格式地图数据,将其加载到游戏中。cocos2d提供了专门的API和函数,用于解析和渲染Tiled Map Editor导出的地图数据。这样,游戏就可以实时显示地图,并根据实际情况进行交互。 使用cocos2d和Tiled Map Editor可以极大地简化游戏地图的制作过程。它们提供了一套完善的工具链,使开发者可以快速有效地创建、编辑和使用游戏地图。无论是在平面视角的角色扮演游戏,还是在横版平台游戏,cocos2d和Tiled Map Editor都可以为开发者带来很大的便利和效率提升。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值