Tiled Map Editor(瓦片地图编辑器)的Java和QT版本区别
作者: Bugs Bunny
地址: http://www.cnblogs.com/cocos2d-x/archive/2012/05/03/2479469.html
对于一些小游戏来说,规则就是它的全部,这类游戏使用的场景几乎都是随机生成的。比如,俄罗斯方块、泡泡龙、斗地主、水果忍者之类的。
稍微上一些规模的游戏,随机场景可能不满足其游戏难度,这时开发商就会选择使用相对固定的场景。比如,横版过关、角色扮演、战棋、解密游戏等等。
游戏越复杂,要涉及的编辑器就越多,地图编辑器,关卡编辑器,精灵编辑器。。。
其中最基本最常用的就是地图编辑器。
知易的第五篇教程开始讲述关于瓦片地图的内容,其中讲到一个叫做Tiled Map Editor的开源工具。这个工具包括Java/Qt两个版本,因为“Qt版运行起来缺少重要的功能”,所以知易说“至少到目前为止,建议大家使用Java版”。知易的说法是十分严谨的,因为在他发布这份教程的时候,Java版的Tiled Map Editor的版本号是0.7.2,而Qt版只有0.4.0。
然而,两年过去了,Qt版已经更新至0.8.0,而Java版却不再维护了。
The Java version is no longer maintained (unless somebody steps up to do it), but it is still available here since it has a few features that do not exist in the Qt version yet.
根据大家的共识,使用不再维护的工具是不明智的,除非有特殊需要。
正因为Java版包含一些Qt版没有的特性,所以它会被保留到xxxx的那一天。抱歉,我也不确定。
笔者撰写本文的目的是说明Qt版与Java版Tiled Map Editor的主要差别。
这里比较的版本为Qt版0.8.0和Java版0.7.2。你可以从Tiled Map Editor的官网上下载到它们。
http://www.mapeditor.org/
先来整体的看一下这两个版本:
Qt版截图
Java版截图
正如你所看到的,Qt版支持多国语言,默认与当前系统一致。为了便于对照,我将其设置为英文界面。
下面我们一项一项开始对比,尽量只选择有差异的地方讲解。
Qt版File菜单 | Java版File菜单 |
1.支持的地图类型
从File菜单来看,它们的功能大致是相同的。那它们都支持哪些地图类型呢?选择New菜单来看一下。
Qt版New Map对话框 | Java版New Map对话框 |
Java版支持Orthogonal(正交,90度)、Isometric(等距,45度)、Hexagonal(六边形),比Qt版多一个Hexagonal,但是要注意这个Hexagonal后面还跟着一个experimental,即实验的。至于实验到了什么程度,我没有用过不做评价,但是可以告诉你,在cocos2d-x中,这个Hexagonal地图是支持的。
2.支持的文件格式
这两版工具分别支持哪些文件格式也是我们需要知道的。
文件格式(导入) | Qt版 | Java版 |
Tiled map files (*.tmx) | √ | √ |
Droidcraft map files (*.dat) | √ | |
Json files (*.json) | √ | |
Tiled Maps files (*.tmx.gz) | √ | |
Mappy Reader (*.fmp) | √ |
文件格式(导出) | Qt版 | Java版 | 备注 |
Tiled map files (*.tmx) | √ | √ | |
Droidcraft map files (*.dat) | √ | ||
Flare map files (*.txt) | √ | ||
Json files (*.json) | √ | √ | Java版里叫JSON map writer (*.js, *.js.gz) |
Lua files (*.lua) | √ | √ | |
T-Engine4 map files (*.lua) | √ | ||
TMW-eAthena collision files (*.wlk) | √ | √ | Java版里叫The Mana World exporter (*.wlk) |
Tiled Maps files (*.tmx.gz) | √ | ||
Mappy Writer (*.map) | √ | 奇怪,导入与导出的后缀名不一样! |
除了.tmx文件外,这两个版本都支持其他格式,但支持的内容不尽相同。这是为什么呢?
原来Tiled Map Editor是支持插件的,表格中.tmx/.tmx.gz以外的格式都是由插件导入的。这大概是为了做MOD什么的吧,反正我们用不上。
需要指出的是,在Qt版中,要使用插件进行导出时,要使用File菜单下的Export As命令,在Java版里是Save As命令。
3.地图的辅助编辑
Qt版Edit菜单 | Java版Edit及Select菜单 |
(1)首先两版编辑器都支持撤销与重做操作,但是Qt版支持历史记录,而在Java版中笔者未找到这个功能。
(2)Qt版仅支持全选和取消选择,Java版多一个反选的功能。反选这个功能,有些人是比较喜欢的,比如我,整理磁盘文件时经常用。
(3)翻转功能,编辑器软件的标配,Qt版不支持真是遗憾,希望作者将来加入这个功能。
(4)Java版支持笔刷设置,在绘制双层墙壁什么的时候,有一个大的笔刷会事半功倍,希望Qt版能加入这个功能。
提示:在Qt版中,可以使用矩形选择工具配合复制粘贴来模拟大尺寸的矩形笔刷,对于圆形笔刷,暂时无法模拟。在使用这个方法的时候,注意不要开启笔刷的随机模式。
(5)两版编辑器都支持随机笔刷,但使用方法和功能都不一样。
Qt版:选择工具栏中的图章刷,并按下随机模式按钮。接着在图块窗口内选择希望随机的图块集合,支持框选、Ctrl+鼠标左键点选、Shift+鼠标左键范围选取。然后就可以在绘图区绘制了。Qt版中的随机是指,从选取的图块集合中随机选择图块绘制到地图上。
Java版:在笔刷设置中勾选Random选项,后面的slider bar表示随机的概率。Java版中的随机是指,笔刷是否绘制内容到地图上。滑块越靠右,绘制上的几率就越大。
4.首选项
Qt版首选项 | Java版首选项 |
首选项中最重要的功能就是可以设置导出文件中的编码格式。
注意,到目前为止,cocos2d-1.0.1-x-0.13.0-beta中的TMX tile map: Only base64 and/or gzip/zlib maps are supported.
所以,在Qt版中,请确保"Store tile layer data as:"的选项是"Base64"开头的那三个之一,在Java版中,至少要保证"Layer Options"下的"Use binary encoding"是选中的。
否则,编辑器保存的地图文件,cocos2d-x不认。
一般来说,为了节省空间,压缩选项也是要选上的。
5.嵌入的图片
你可能已经注意到,在Java版的首选项中,"Tileset Options"下有一个"Embed images (png)"选项。
是的,Tiled Map Editor可以把图块嵌入到地图文件中。但是,cocos2d-x不支持这种内嵌了图块的地图文件。
这个选项仅对通过"Tileset Manager"手工创建的图块集起作用。
不论是制作效率还是运行效率,你都不会需要这种地图的,让我们无视它吧。
6.调整地图大小
Qt版Resize对话框 | Java版Resize Map对话框 |
可以看到,Qt版的调整地图大小是可视化的,操作很直观,不易出错。
7.地图的剪辑选择(仅Qt版)
当你只想保留地图上的一部分时,剪辑选择是一个不错办法。先选中要保留的地图区域,然后执行"Crop to Selection"(剪辑选择),一切就都搞定了。
8.挪动地图(仅Qt版)
这是一个非常酷的功能。你可以对整张地图或者选区进行操作,在四个方向挪动它们,甚至允许滚动地图。
9.物件支持
Qt版Layer菜单 | Java版Layer菜单 |
最后要介绍的这个功能,在Qt版里叫做物件层,在Java版里叫做物件组。
实话实说,我还没有尝试过这个功能的用途,所以仅从编辑器的层面上来比较它们。
(1)Qt版支持多边形物件;Java版仅支持矩形物件。
(2)Qt版可以在像素级别摆放物件;Java版的精度仅达到Tile级。
(3)Qt版的物件操作效率很高;不知是Tile级精度的问题,还是JVM效率的问题,Java版添加物件后真的有些卡。
小结
抛开对六边形Tile的支持、翻转操作以及笔刷设置这3点,我认为Qt版基本上算是大获全胜的。你是怎么认为的呢?
Tiled Map Editor(瓦片地图编辑器)的Java和QT版本区别相关推荐
- Tiled Map(瓦片地图)
Tiled Map(瓦片地图) Legendof19912014-06-12 14:57:28383 次阅读 Tiled Map(瓦片地图)编辑器的使用,详见:http://blog.csdn.net ...
- html5地图编辑器,Tiled地图编辑器 Tiled Map Editor 的使用(一)基础功能+地形功能...
看了很久关于 Tiled Map Editor 相关资料,但是网上的东西相对太少了,多日整理之后重新写一份吧 一方面是对自己学习的总结 另外也是和想入门的人做个分享. 首先是官网下载地址 http:/ ...
- Tiled地图编辑器 Tiled Map Editor 的使用(一)基础功能+地形功能
看了很久关于 Tiled Map Editor 相关资料,但是网上的东西相对太少了,多日整理之后重新写一份吧 一方面是对自己学习的总结 另外也是和想入门的人做个分享. 首先是官网下载地址 http ...
- 【日常点滴016】python游戏库arcade结合Tiled map editor地图编辑器和Pymunk物理引擎制作游戏过程记录,并最终打包为exe文件
独此一家,建议收藏 前言 一.创建一个空白窗口 step001.py代码示例 二.创建很多全局能用的常量 step002.py代码示例 三.创建实例变量即代表各种精灵等的变量 step003.py代码 ...
- Tiled Map Editor 地图编辑器(一)基础功能+地形功能
看了很久关于 Tiled Map Editor 相关资料,但是网上的东西相对太少了,多日整理之后重新写一份吧 一方面是对自己学习的总结 另外也是和想入门的人做个分享. 本文链接地址: [url]htt ...
- tiled素材_瓦片地图 Tiled Map
瓦片地图(Tiled Map) 瓦片地图(Tile Map) 不但生成简单,并且可以灵活的用于Cocos2d-x引擎.不论你的游戏是角色扮演游戏, 平台动作游戏或仿打砖块游戏,这些游戏地图可以使用开源 ...
- Tiled Map Editor libgdx 讲解
Tiled Map Editor 主页为:http://www.mapeditor.org/,中文基本都翻译为瓦片编辑器,原因便是此工具是将小的碎片拼接在一起,形成一个个地图,因此叫做瓦片编辑器. 工 ...
- 【Cocos2d-x游戏引擎开发笔记(13)】Tiled Map Editor(一)
原创文章,转载请注明出处:http://blog.csdn.net/zhy_cheng/article/details/8308609 Tiled Map Editor是Cocos2d-x支持的地图编 ...
- Tiled Map Editor(一)
出处:http://blog.csdn.net/zhy_cheng/article/details/8308609 Tiled Map Editor是Cocos2d-x支持的地图编辑器,使用Tiled ...
最新文章
- 面试官:为什么在系统中不推荐双写?
- 老男孩Linux运维第41期20171016第六周学习重点课堂记录
- python中label组件参数_python中连接的组件标签
- macappstore登不上去_丈夫在外与多人暧昧,妻子气愤不已,可他却怒怼:这还不都是你逼的...
- Win10安装配置CLion+MinGW
- python中lstrip函数_python中strip(),lstrip(),rstrip()函数的使用讲解
- Android 圆形进度条控件
- 《一梦江湖》(原楚留香)游戏拆解分析(一)
- dbt(data build tool) is an open source data transformation, and using Jinji templating
- 梅特勒托利多xk3124电子秤说明书_托利多电子秤详细说明书
- java电商项目搭建-------分布式文件存储系统(fastDFS)
- Zotero+onedrive同步问题
- golang rabbitMQ 生产者复用channel以及生产者组分发策略
- 笔试题之——栈问题(列车车厢编组问题)
- 闯荡Linux帝国:nginx的创业故事
- Matlab 在图片上画虚线矩形框
- [转]科普 | 什么是宽表?
- 搜款网新接口的展示过程
- 计算机基础实训评分标准,计算机实训考核办法细则.doc
- matlab arctan unwrap,atan和unwrap解卷绕
热门文章
- java反射消耗性能吗_JAVA反射会降低你的程序性能吗?
- 单容水箱液位pid控制实验报告_单容水箱液位过程控制实验报告
- Linux cma内存的使用
- java打印输出万年历_Java基础之打印万年历的简单实现(案例)
- 科技云报道:在线教育下半场,电子合同如何为教育赋能?
- 关于如何使用xposed来hook某支付软件
- 在微信公众号后台进行基本配置时遇到系统发生错误,请稍后重试、token验证失败、请求URL超时的解决办法
- Windchill:客制化角色、生命周期状态
- 小程序 蓝牙 NFC WiFi
- 企鲸客scrm跟小裂变的功能对比