TiledMap简单使用

  categories:资料  author:

tiled map是一款开源免费的游戏地图编辑开发工具,可以帮助您开发游戏的内容。软件最主要的功能便是编辑游戏中各种形式的瓷砖地图,侧重于一般的灵活性,同时保持直观,并支持图素、层次和对象等通用概念。tiled map支持快速的编辑游戏地图,使用方面也是非常的简单,不管是新手还是老手,都可轻松的进行编辑,软件里面还内置了大量的游戏地图模块,免费的提供给大家进行使用,是游戏开发人员快速开发游戏一大利器。

使用教程

1、创建新文件 ,然后写入自己的地图大小,和块大小。这里所谓的地图大家可以想象成自己游戏中的地图大小,tiled中将地图分为一个一个块,每一个块大小相同,所有的块拼接成一张地图

2、选择一张背景图片加入到该项目,直接将一张图片拖入到右边的“图块”中

3、接下来把图块中的图片全部选中拖入到左边的窗口中,可以贴很多张因为刚开始我们创建的项目图片大小是6400的高度

4、接下来创建地图中的对象,也就是所谓的敌军飞机,首先在地图中创建一个图层,然后再图层中画方框,或者圆形来代表敌军飞机,选中图层,然后选择矩形图标,你就可以在地图中画矩形对象了。

5、都完成后,基本页面就做好了,接下来就是代码的输入了

—-

官网下载地址

http://www.mapeditor.org/

官方文档

http://doc.mapeditor.org/

参考的文章

http://blog.csdn.net/zhy_cheng/article/details/8308609

http://blog.csdn.net/zhy_cheng/article/details/8316277

http://blog.csdn.net/zhy_cheng/article/details/8363028

关东升  http://blog.csdn.net/tonny_guan/article/details/39324041
泰然网1 http://www.taikr.com/article/1924
泰然网2 http://www.tairan.com/archives/7122/
Github  https://github.com/chukong/cocos-docs/blob/master/tutorial/framework/native/how-to-make-a-tile-based-game-with-cocos2d/part1/zh.md

图片素材网址 http://www.2gei.com/rpg-marker/map/pn3/

 

示例:

一》打开TiledMap,新建地图:
块大小可结合图片资源来设置,地图大小结合块大小和像素大小来设置。

新建完成后如下,右边默认图层名字为块层1,可更改图层的名字:

图层定义:

用于分隔不同作用的地图元素以方便管理和实现层叠显示。举例跑酷的场景中可以将地面、背景建筑、碰撞物体等分层放置,对于背景只是用来增加画面效果不会用于判断碰撞等事件,墙壁等瓦片图如果不能充满整个图块就会造成颜色不协调(同一个图块位置无法放置两种不同的瓦片图),所以层的出现解决了这个棘手的问题,保证了背景可以存在上面又能用墙壁等瓦片图遮挡显示一部分图片。 图层主要放置不会改变的图片,如地面或墙壁等

二》导入图块资源:

三》图块层布局:
导入之后,就可以直接在右下角选中图块资源,放到图层上布局就可以了,背景布置完毕:

接下来,要加入小鸟、飞船等障碍物,爱心奖励物,可这些在游戏中是动态的,如果直接加入图片就不能动了,所以这些不能直接加入图块层,而是新建对象层:

四》添加对象层:
对象层概念:

主要用于放置NPC、金币、主角、宝箱、障碍物等,该类特点是经常会移动、变换形态、显示或隐藏等。另外对于我们自定义的一些选框、路径等也可以放在此层中。它并不对应于某个地图图片,只是标明了某个位置,这样开发者可以通过相关 API 获取某个对象的位置,从而在相应的位置进行绘制。对象也是可以有名字的,这样可以通过相关 API 通过名字得到对象。

例:新增了4个对象层,在对象层中添加了一些形状的对象,用这些对象来表示该位置上对应的障碍物或奖励品,也就是暂时用这些小方块小圆圈来代替具体的游戏实物。在程序中,我们可以遍历指定对象层上的全部对象,然后再在这些对象的坐标处创建相应的障碍物或奖励品,这样不管是它们是静态的还是动态的,都可以很方便的。这里形状和大小并无太大关系,因为我们在程序中只需要取对象的坐标值。

五》导出文件:
保存,并连同图块资源一起拷贝到项目的res/image目录下,用于游戏加载。注意的是,.tmx文件与.png资源默认情况下需要放在同级目录下,如需修改,可以打开.tmx文件修改路径。 对象组(ObjectGroups)中的对象(Object)在TMX文件中以键值对的形式存在,因此我们也可以直接在TMX文件中对它进行修改。

六》游戏加载:
self.map = cc.TMXTiledMap:create(“image/test.tmx”)
:align(display.BOTTOM_LEFT, display.left, display.bottom)
:addTo(self, -1)

self:addBody(“heart”, Heart)
self:addBody(“airship”, Airship)
self:addBody(“bird”, Bird)

function BackgroundLayer:addBody(objectGroupName, class)
local objects = self.map:getObjectGroup(objectGroupName):getObjects()
local dict = nil
local i = 0
local len = table.getn(objects)

for i = 0, len-1, 1 do
dict = objects[i + 1]

if dict == nil then
break
end

local key = “x”
local x = dict[“x”]
key = “y”
local y = dict[“y”]

local sprite = class.new(x, y)
self.map:addChild(sprite)

if objectGroupName == “bird” then
table.insert(self.bird, sprite)
end
end
end

————————

Tiled是一个2D级别的编辑器,可以帮助您开发游戏内容。它的主要功能是编辑各种形式的瓷砖地图,但它也支持免费的图像放置以及使用游戏使用的额外信息来注释您的关卡的强大方法。Tiled专注于一般的灵活性,同时努力保持直观。

在平铺贴图方面,它支持直的矩形平铺图层,但也支持投影等距,交错等距和交错六边形图层。tileset可以是包含许多tile的单个图像,也可以是单个图像的集合。为了支持某些深度伪装技术,可以通过自定义距离偏移图块和图层,并可以配置它们的渲染顺序。

编辑切片图层的主要工具 是一个印章笔刷,可以高效地绘制和复制图块区域。它还支持绘制线条和圆圈。此外,还有一些选择工具和一个自动地形过渡工具。最后,它可以根据模式匹配应用更改,以自动执行部分工作。

Tiled还支持对象层,传统上这些对象层仅用于使用信息来注释地图,但最近它们也可用于放置图像。您可以添加矩形,点,椭圆,多边形,折线和平铺对象。对象放置不限于平铺网格,对象也可以缩放或旋转。对象层提供了很大的灵活性,可以将几乎任何信息添加到您的游戏所需的级别。

值得一提的其他事情是支持通过插件添加自定义地图或tileset格式,平铺图章内存,平铺动画支持和平铺冲突编辑器。

入门

创建新地图

首次启动Tiled时,我们会看到以下窗口:

平铺的窗户

平铺的窗户

我们要做的第一件事就是用File – > New – > New Map …Ctrl+N)开始一个新的地图。将弹出以下对话框:

新地图

新地图

在这里,我们选择初始地图大小,平铺大小,方向,平铺图层格式,平铺渲染顺序(仅支持正交贴图)以及地图是否无限。所有这些事情都可以在以后根据需要进行更改,因此第一次完成所有操作并不重要。

保存地图后,我们将看到平铺网格和初始平铺图层将添加到地图中。但是,在我们开始使用任何瓷砖之前,我们需要添加一个瓷砖组。选择File – > New – > New Tileset …打开New Tileset对话框:

新的Tileset

新的Tileset

单击“ 浏览…”按钮,然后tmw_desert_spacing.png 从装有Tiled的示例中选择tileset(或者如果您愿意,可以使用自己的一个)。此示例tileset使用32×32的tile大小。它在瓷砖周围也有一个像素边距,瓷砖之间有一个像素间距(实际上这很少见,通常你应该将这些值保留为0)。

注意

我们禁用了嵌入地图选项。建议这样做,因为它允许多个地图使用tileset而无需再次设置其参数。如果稍后添加切片属性,地形定义,碰撞形状等,将tileset存储在自己的文件中也是很好的,因为然后在所有地图之间共享该信息。

保存tileset后,Tiled应如下所示:

Tileset创建

Tileset创建

由于我们现在不想对tileset做任何其他事情,只需切换回地图文件:

Tileset可在地图上使用

Tileset可在地图上使用

我们准备选择一些瓷砖并开始绘画!但首先,让我们快速浏览一下Tiled支持的各种图层类型

注意

大部分手册仍需编写。幸运的是,GamesFromScratch.com上有一个非常好的Tiled Map Editor教程系列。此外,Tiled在各种引擎和框架中的支持 通常附带一些使用信息。

 




快乐成长 每天进步一点点      京ICP备18032580号-1