【Cocos2d-X开发学习笔记】开发工具之Tiled地图编辑器的使用

       

        Cocos2D-X支持Tiled地图编辑器生成的地图数据文件。Tiled地图编辑器是一个以普遍使用为目标的地图编辑

器,它使用简单并且可以轻松地在不同的引擎中使用。目前最新版本使用Qt框架进行开发,之前也有Java版本,目的

就是可以使编辑器跨平台。这点在Cocos2D-X的开发中也比较重要。因为Cocos2D-X的跨平台特性,可能导致用户所

使用的操作系统各不相同。为了让大家都可以看到地图的效果,编辑器的“跨平台”也是必要的。

 

 

一、Tiled地图编辑器

 

Tiled地图编辑器的特性如下:

<1> 使用基于XML编码形式的地图数据文件使其可以在不同的游戏引擎中通用。

<2> 支持普通和45度角两种视角。

<3> 对象的放置可以精确到像素。

<4> 支持撤销/重做和复制/粘贴的操作。

<5>支持图素、层次和对象等通用的概念。

<6>自动重新载入图素集。

<7> 可以重置图素的大小和偏移。

<8> 支持图章刷和填充等高效工具。

<9> 支持以通用的格式输入输出来打开和存储文件。

 

注意:本教程使用的是最新版Tiled 0.9.1 for Windows。

 

    Tiled地图编辑器的下载地址为http://www.mapeditor.org/download.html,下载后直接双击运行安装,安装后运行效果图

如下所示。

 

 

二、使用编辑器编辑地图

 

      Tiled地图编辑器并不是专门为Cocos2D-X设计的编辑器,而是广泛适应各种引擎。在Cocos2D-X中使用Tiled地图

编辑器编辑地图,首先要在资源文件中加入图素文件和地图数据文件,然后使用Cocos2D-X中的瓦片地图类处理。

 

下面就让我们一起来学习如何使用Tield地图编辑器编辑地图。

<1> 选择“文件->新文件”,新建地图工程。

 

<2> 在弹出的对话框中设置地图的高度和宽度,图块的大小以及地图的方向。

 

<3> 选择“地图->新图块”导入图素文件。

 

<4> 在弹出的对话框中设置图块的大小、边距和偏移量等等。

 

<5> 选择完成图块后,右下角的部分就显示了目前的图块,选择相应的图块便可以填充地图了。

 

<6> 工具栏中提供了不同工具填充,包括图章刷、填充、橡皮擦和选择矩形区域等。可以使用图章刷为每个格填充图

案,填充是批量地填充图素,橡皮擦可以擦掉之前的填充图案。

 

<7> 屏幕的右上角为图层编辑部分。

通过图层编辑部分可以选择我们需要编辑的图层,并且可以排除其他层的干扰。

 

下图是图层编辑部分的按键、包括新建层、改变层的顺序、复制图层以及删除图层等按钮。

 

另外,选择菜单中的图层部分也可以帮助编辑修改图层。

 

<8> 地图的相关参数在地图菜单中修改,如下图所示。

 

<9> 通过视图菜单修改地图在编辑器中的缩放比例。

 

<10> 最后通过另存为把TMX文件保存在指定的位置。

 

 

 

三、添加对象层

 

1、Tiled地图编辑器有一个功能,就是可以给地图添加对象层。单击新建层按钮便可以选择添加对象层。

 

2、对象层中摆放对象的位置可以精确到像素,可以在对象层中加入图素和图形等。

 

下图是精灵层中可以使用的按钮。

 

3、选中对象右击可设置对象的属性。

 

4、修改对象的属性。

 

      精灵层其实就是没有图素位置限制的地图层。精灵层一般放置大图素(起到修饰作用的无实际意义的图素,大小

不受地图图素大小的限制)和机关(在游戏中起某些功能性作用,如传送门等,大小不受地图图素大小限制)。对象

层和地图层结合叠加就组成了整个地图。

 

 

四、Tiled地图编辑器数据文件

 

Tiled地图编辑器生成的TMX数据文件类似于XML文件,使用文本编辑器可打开。

<?xml version="1.0" encoding="UTF-8"?>
<map version="1.0" orientation="orthogonal" width="40" height="40" tilewidth="32" tileheight="32">
 <tileset firstgid="1" source="desert.tsx"/>
 <layer name="Ground" width="40" height="40">
  <data encoding="base64" compression="zlib">
   eJztmNkKwjAQRaN9cAPrAq5Yq3Xf6v9/nSM2VIbQJjEZR+nDwQZScrwztoORECLySBcIgZ7nc2y4KfyWDLx+Jb9nViNgDEwY+KioAXUgQN4+zpoCMwPmQAtoAx2CLFbA2oDEo9+hwG8DnIDtF/2K8ks086Tw2zH0uyMv7HcRr/6/EvvhnsPrsrxwX7rwU/0ODig/eV3mh3N1ld8eraWPaX6+64s9McesfrqcHfg1MpoifxcVEWjukyw+9AtFPl/I71pER3Of6j4bv7HI54s+MChhqLlPdZ/P3qMmFuo5h5NnTOhjM5tReN2yT51n5/v7J3F0vi46fk+ne7aX0i9l6If7mpufTX3f5wsqv9TAD2fJLT9VrTn7UeZnM5tR+v0LMQOHXwFnxe2/warGFRWf8QDjOLfP
  </data>
 </layer>
</map>

    

    其中存储了地图的基本信息,以及层次的信息。层次的信息使用base64方式编码,使用gzip方式压缩。Cocos2D-X

引擎中,提供了解码和解压缩的方式。在定义Cocos2D-X中的瓦片地图集时,传入数据的地址即可。

 

 

关于如何让TMX格式的地图在屏幕中显示出来请参考文章:

《【Cocos2d-X开发学习笔记】第25期:游戏背景之瓦片地图集类(CCTMXTiledMap)的使用》

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值