tiled map editor地图编辑器怎么用

Tiled地图编辑器怎么用_百度知道【Cocos2dx工具Tiled工具使用】
【Cocos2dx工具Tiled工具使用】
写在前面——
如果转载请注明出处,谢谢大家支持
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
——Forward
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&我的微博——
QQ技术交流群——forTheDream()
地图的编辑
&&&&在之前的博客中,Forward有提到过一个比喻,游戏开发就好像画家画画,所有游戏中的元素需要一个承载体,画面的承载体是画纸,游戏的承载体是地图(场景)。那么接下来我们就来学习一下一个比较经典的地图编辑器——Tiled。(下载安装过程,这里略去,网上的相关资料略多,这里不再赘述)。&&&&&&
&&&&首先来看看Tiled主界面——
我们需要新建项目,如下图2所示,选择新建项目:
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&弹出图3所示对话框,我们在这个对话框中对目标地图开始一个初始的设置。
&&&&&&&&&&&&&&&&&&&&&&&&&&
其中,地图选项组中的跨度和高度指的是你编辑获得的地图的横向和纵向的格子数目,而块大小选项组中的宽度和高度则指的是每一个块的像素宽和像素高。
&&&&这里需要说明的是,因为Forward编辑的目标地图是一个768&1024分辨率的地图,每个格子大小为32&32像素的正方形格子,因此,Forward选择地图大小选项组中的宽度和高度分别为24和32。当然,根据项目的需要,我们自己来设定格子数目。
&&&&我们在一个初始的地图图层上放上自己的图块对象就可以完成一个简单的地图。但是我们在此之前需要将自己的图块导入到工程中,所谓的图块其实就是一张png或者jpg类型的图片而已。如图4所示,我们选择菜单栏地图选项并在他的下拉列表中选择添加一个新图块——
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&如图5所示,在弹出对话框中的名称一栏填入我们对新图块的命名,图像一栏可以通过“浏览”来选择资源路径,点击确定完成新图块的导入。
&&&&&&&&&&&&&&&&&&&&&&&
&&&&图6,资源导入成功。
导入新图块完成之后,我们就可以像使用画刷一样来使用新图块中的资源来绘制我们的地图了。
&&&&编辑过程不再说明,来张编辑效果图把——
&&&&&&&&&&&&&&&&
&&&&这样一个可视的地图就展现在我们面前了,但是这样的地图在程序中怎么加载呢?加载到程序中又该怎么去使用呢?在程序世界中应该是一个一个对象的集成的,这里如果只是用这么一张图块创建一张地图的话,加载的程序中几乎没什么用。我们需要在它的基础上在创建一个对象层,而这个对象层上我们会布置上对应的对象,这样当我们在程序中去加载这张地图时就可以通过解析对象层来获得一张对象地图,在游戏开发中就可以操作各个对象去完成预期的效果
&&&&如下图8,在图层窗口右键点击创建一个对象层——
&&&&&&&&&&&&&&&&&&&&&&&
&&&&有了这个对象层之后呢,我们就可以在对象层上去创建自己需要的对象了,选择工具栏上对应的工具。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&Forward这里需要的地图中的每个对象都是正方形的,所以选择如图9所示。OK,选择好对象创建工具,开始创建对象。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&Tiled支持一个对象占用多个瓷砖块,这个可以根据自己游戏的需要去完成。并且我们可以根据需要对每个对象进行一些属性的设置。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&好的,保存地图得到tmx地图文件一张,这里需要说明的是,其实后面的那层对于程序中来说其实不是必需的,我们大可以把那一层删掉,只保留对象层,但是为了方便后续地图再编辑修改,我们也可以将后面一层保留。
地图的加载使用
&&&&有了前面创建的地图,我们怎么在程序中来使用它呢?带着这个问题,我们继续后续的学习——
&&&&在cocos2dx中我们可以找到一个CCTMXTiledMap类,这个类可以帮助我们完成对tmx格式地图文件的创建和操作。
pTMXTiledMap = cocos2d::CCTMXTiledMap::create("GameSceneMap.tmx");
this-&addChild(pTMXTiledMap,0,1);
通过create接口创建,并且add到场景中即可,这样我们就成功将这张地图加载到程序中了。这里需要说明的是,如果你按照Forward前面提到的将后面的背景层保留,那么我们看到的是如图13所示的结果。
可以明显看到,场景中只有一个对象,那就是这张地图,而我们几乎从这张地图上不能获得我们所预期中的对象属性。
但是如果你将背景层删掉了,我们得到的结果是什么呢——地图确确实实加载成功了,但是我们的场景中什么都看不到,别灰心,我们除了创建加载这样地图外,还需要一些额外的工作去做,那就是解析tmx地图中的对象属性。
cocos2d::CCTMXObjectGroup* group =
pTMXTiledMap-&objectGroupNamed("Objects");
cocos2d::CCArray* objects = group-&getObjects();
cocos2d::CCDictionary* pDic = NULL;
cocos2d::CCObject* pObject = NULL;
CCARRAY_FOREACH(objects, pObject)
pDic = static_cast(pObject);
ParseObject(pDic);
查看上面一段代码清单,操作过程是这样的。通过objectGroupNamed接口根据我们编辑tmx地图的时候给对象层起的名字获得对象组,然后通过objects接口我们可以获得这个层上的所有对象,这些对象保存在一个Array中,然后我们就可以对每个对象进行逐个解析了(说明一下的是这里我们将每个Object转换为CCDictionary来处理,这样地图上的这个对象属性就以键值对的方式保存在对应的CCDictionary中了)。
那么针对每个对象,我们是如何解析的呢?
(strcmp(pDictionary-&valueForKey("name")-&getCString(),"Tree") == 0)
Tree* pTree = new
pTree-&initWithFile("tree.png");
atoi(pDictionary-&valueForKey("x")-&getCString());
atoi(pDictionary-&valueForKey("y")-&getCString());
pTree-&setAnchorPoint(ccp(0,0));
pTree-&setPosition(ccp(x,y));
pTMXTiledMap-&addChild(pTree);
ObjectManager::getInstance()-&AddObject(pTree);
我们通过对比对象name值判定如果是树木,就创建一棵“树”并设置其属性之后添加到场景中。
好了,其他对象的解析过程大致类似,这里我们就不再赘述了,华丽丽来一张解析之后的运行效果图吧~
&&&&&&&&&&&&&&&&
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。cocos2d-x(34)
地图编辑器的使用
首先先来介绍一下使用地图编辑器tIDE Tile Map Editor来生成TMX文件。&&
tIDE的介绍自己看就不说了,下面来创建第一张地图,用于我们的TD游戏。
你现在需要一张这样的tile图片,来做完地图的基本元件
在Explorer面板Map节点地下的Tile Sheets右键Add,然后浏览选择上面的或者你自己的tile文件。
OK弹出Tile Sheet Properties对话框设置一下Tile Size让Tile完美的切割。这里的值是60x60。
ok,然后会在Tile picher面板里就会出现一个个分割好的Tile。
有了这些tile的支持就可以在map上玩拼图了。在map Explorer面板下的Map节点的Layers上右键Add,在弹出的Layer Properties设置地图的大小Layer Size,因为我现在只打算做一个最简单的也就是一屏幕而且不能拖动所以这里设置14x8 (800/60 x 480/60),OK。
为了方便绘制在工具面板的右上角有一个显示网格的按钮,点下去它
右边的绘图工具栏上有一个很好使用的按钮区域绘制,它能把选择区域填充出当前选择的tile,下面就先在tile Picker选择一块浅色的草地区域绘制到整个地图。然后画上我们的路。
Save as为 tmx类型的文件
中间如果出现警告确定就好了
这里出现了最关键的一步,这里一定要选Base64(gzip compressed),ccx现在的版本还只支持这一种。
把生成的tmx文件以及tile图片加入我们的项目中。
这里可能需要调整一下tmx文件中的Image source的路径
在程序中显示TMX地图
先显示出来看看努力的效果,之后再慢慢完善。
把GameScreen构造函数中的说明Label删除,添加CCTMXTiledMap
代码很简单如下
private GameScreen()
CCTMXTiledMap tmxmap = CCTMXTiledMap.tiledMapWithTMXFile(&Map/Level1&);
addChild(tmxmap);
运行效果图如下
想要呀想要呀,撸妹呀800,撸妹呀。
&没写完待续。。。。。图实在太多了分页
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:97553次
积分:1406
积分:1406
排名:千里之外
原创:37篇
转载:33篇
评论:33条
(2)(1)(2)(4)(8)(5)(2)(3)(5)(4)(5)(1)(8)(1)(19)相关软件 /中文/ /中文/ /中文/ /中文/ /中文/ /中文/ /中文/ /中文/ /英文/ /中文/顶好评:50%踩坏评:50请简要描述您遇到的错误,我们将尽快予以修正。轮坛转帖HTML方式轮坛转帖UBB方式
1.6M/中文/5.9
9.0M/中文/5.0
112.9M/中文/3.3
212.7M/中文/6.2
2.9M/中文/8.8
3.2M/中文/7.5
62KB/中文/6.6
地图编辑器(Tiled)一个简单直观的中文游戏地图编辑器,帮助创建属于你自己的游戏地图。风格类似mini版的。它可以用于制作多种类型的游戏引擎需要,而且支持使用插件读写map、增加用于引擎的map格式。它是一款独立的地图编辑器,并不属于某一款游戏或者引擎。读者下载到的它的运行版本或者源代码,同时推出了Windows系统与Mac系统的两个版本。新一代砖块地图编辑器采用了QT的渲染内核。它的主要功能是将充分利用砖块地图的实现技术,为游戏的制作人员提供一个快速便利、可操作的地图编辑器。它需要使用图片资源作为游戏地图中的砖块元素,然后设计人员可以使用砖块元素来拼接游戏中的地图背景画面,最后将拼接完成的地图数据导出为文件,以便提供给游戏引擎使用。此款地图编辑器,它支持正方形、菱形以及正六边形的砖块图形。这三种图形的砖块能够拼接出三种不同视觉的游戏背景地图。Tile Map Editor其他功能:Tile Map Editor(砖块地图编辑器)还提供一些其他的功能。例如在地图添加事物元素并可以设置它们的属性,可以将地图划分为不同的层次,支持多层地图和碰撞层信息。它提供了多个语言版本,其中就有我们喜闻乐见的简体中文。还犹豫什么,没有比它更适合的地图编辑器了,赶快下载安装吧!否则,你就需要拿出尺子和铅笔,自己画一张游戏地图了。技巧:如果读者真要打算手绘砖块地图的话,最好再准备一块橡皮吧!在Tile Map编辑器中,开发者可以编辑俯视角度和斜45°的图块拼接地图,同时它支持多个图层的叠加。另外,在编辑器中还提供了一些额外的功能。比如允许开发者添加触发区域和物体,也可以为图块拼接添加代码中所需的用来判断图块拼接类型的属性,也可以为每个地图添加属性值。Tile Map还支持了多种地图背景的导出格式。不过它们都是通过TMX文件来存储的。下面就为读者展示一下,如何使用Tile Map Editor来拼接一张游戏背景图。Tile Map Editor提供了很多的演示项目。接下来就以其中的一个简单示例项目,来为读者介绍编辑器的基本操作。在下载安装之后,读者就可以运行Tile Map Editor。第一次运行的界面空无一物,此时读者可以选择打开安装路径下的\examples\desert.tmx文件。读者也可以直接将文件拖到编辑器界面当中。然后就会看到如下的界面。Tiled Map Editor中一个沙漠的游戏地图。这种地图的拼接方式与《超级玛丽》、《魂斗罗》、《》、《传说》、《星际争霸》、《文明》等等知名的游戏一样。此时读者会不会有些兴奋?因为你将要使用与这些经典游戏同样的实现技术。这就是前人栽树,后人乘凉。没有Tile Map Editor和Cocos2D-X引擎的支持,怎么能如此轻松地就实现了砖块地图技术呢?这才刚刚开始,不要骄傲,要想制作一款全球知名的畅销游戏,可不只是依靠先进的技术就行的。虽然这些典型的游戏都是使用的砖块拼接游戏背景,但是读者要想制作出高水平的背景地图还需要更多的努力和经验。注意:虽然都是采用砖块拼接地图的技术,但是每款游戏的实现方式也存在差异。先来介绍一下图6-6中展示的编辑器界面。编辑器操作界面分为了三个部分。这三个部分已经在图中用文字标出,它们为地图编辑区、图层列表和砖块元素。这三个区域将是开发者主要操作的内容。配合界面顶部的菜单栏和工具栏,我们就可以制作出精良的游戏背景了。砖块拼接地图背景:Tile Map Editor只支持以砖块拼接地图背景的方式。其实Cocos2D-X引擎中也支持此种方式。并不是因为开发者的懒惰,而是砖块拼接的方式几乎涵盖了所有的游戏类型背景画面。前面已经为读者讲述过砖块拼接的优缺点。此技术的好处是能够节省图片和在有限的图块元素基础上,设计人员可以随意地拼接创造无限的、富于变化的地图背景。技巧:在拼接的过程中,设计人员可以创建一小片区域,然后重复利用这片区域。读者看图6-6中地图编辑区域,这正是设计人员利用砖块元素拼接而来的游戏地图背景。凭借Cocos2D-X引擎的功能,开发者能够在游戏中展现出完全一样的游戏背景。界面右边砖块元素区域内放置着相同的尺寸大小的砖块。它们是由一张纹理图片切割而来。毫无疑问,地图编辑区内的每一个图块都可以在这里找到对应的砖块元素。这也是砖块地图的精髓所在。在游戏背景中可以看出被重复使用的砖块元素。这就利用基本元素通过不同的组合拼凑出了更大的画面。每个砖块在地图背景中都可以被重复利用。另外,因为它们都来源自一张图片,所以其在内存中只占有一份空间。这张图片就是由美术人员制作完成的。然后设计人员利用图片中的砖块元素,充分发挥创造力来拼接游戏背景地图。在编辑地图的过程中,设计人员可以利用砖块不同的组合和摆放位置,营造出各种各样不同的效果拼接方式。这是它的优点,同时也是缺点。为了能够拼接背景地图,美术人员的创作就会受到限制。他们不能再绘制那些风格独特、形状复杂的事物。因为要考虑图块必须能够被重复利用以及拼接之后的画面效果。就不得不在画面的精细程度上有所损失,同时拼接的地图背景还存在一定的重复性。这些都是读者在使用之前需要明确的事项。
安卓官方手机版
IOS官方手机版
地图编辑器(Tiled) 0.10.2 中文免费版
下载帮助西西破解版软件均来自互联网, 如有侵犯您的版权, 请与我们联系。}

我要回帖

更多关于 tiledmap 教程 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信