版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明
原文地址:
http://www.matrix.org.cn/resource/article/43/43790_j2me_mappy.html
关键字:j2me,mappy,tile,地图编辑

本文主要介绍目前开发游戏比较流行的两款工具mappy(mapwin)和tiled,分别介绍工具的安装、使用、优缺点分析,虽然不能面面俱到,但使用要点之处都已说明。作为开发游戏的fans们必不可少的入门指南。

一、何所谓“地图编辑器”
 地图编辑器,顾名思义,就是用来编辑地图的工具,如果玩过《魔兽争霸》或是《帝国时代 2 》、《英雄无敌》的话,应该会知道这几款游戏都附有地图编辑工具,可提供玩家自行编辑地图关卡,地图编辑器就具有类似的功能。

二、mappy(mapwin)入门指南:

1.预备知识:
tile:中文名字-瓷砖,呵呵,也就是平铺在某个物体表面上的单元。使用过j2me的Tile或者vc开发游戏的都知道。
playback library:回放库,支持装载和显示mapwin的FMP地图文件的库。

2.mapwin简介:

软件名称:mapwin
版本:1.4.11
运行环境:windows
依赖库文件:libpng12.dll、zlib.dll
用途:灵活的建立2d、3d游戏的tile。
强大的回放库支持:DirectX、Allegro、OpenGL、Java、CDX、SDL、Delphi、Blitz Basic、Dark Basic、GBAMappy、Combined、GameMaker等

3.快速安装导航:
首先就是下载 mapwin,作者下载的是mapwin1.4.11版。
如果需要支持PNG图片,那么就要到下载两个dll文件:
zlib.dll-用于文件压缩,下载地址: zlib.net
libpng12.dll-libpng的window版,png图像压缩库,下载地址: gnuwin32
安装这两个dll文件很简单,方法就是直接复制到mapwin目录下。

4.快速使用导航:
(1)第一步就是启动程序。然后File->new map,新建一个map,设置每个tile的长宽和map包含的tile的行数和列数。

(2)根据提示进入File->Import...,选择作为tile的图片,这样右侧会出现以前面设置的按照每个tile的长宽划分的图片tile。

(3)此时就可以使用鼠标选取tile,在map中的适当位置点击便会将此tile画在map上。使用右键可以删除map上的title。

(4)mapwin默认只有一个layer,如果要新建layer的话,可以通过Layer->add layer实现,map上方的状态条会显示鼠标当前的位置和当前Layer的层数。

(5)map完成后,按ctrl+s保存,选择File->export as text,将map导出为用map数组表示的文本。其中“Map Array(s) Prefix with”选项可以修改为java语言表示数组的形式:new int[][]。这样就会生成j2me中可用的代码片断,可以直接用到程序中。

5.优缺点:
优点:与tiled相比,支持2d、3d游戏,具有很多的游戏开发接口和语言;使用相应的回放库可以设置碰撞检测等扩展功能。
缺点:缺少快捷工具栏,操作速度慢。

三、tiled入门指南:

1.预备知识:
Tileset:tile的集合,这是tiled管理tile的一种分组方式。每个tile有一个name来代表。
Tile的存在方式:tiled软件管理tile的方法与众不同。tile默认只保存在map中,也可以导出为.tsx文件供多个map共用。

2.tiled简介:

软件名称:Tiled
版本:0.5.1
运行环境:支持java的os
依赖库文件:无
用途:tiled地图编辑器是一种用于通用目的的编辑器。特点是比较好用,风格类似mini版的photoshop。它可以用于制作多种类型的游戏引擎需要,而且支持使用插件读写map、增加用于引擎的map格式。

3.快速安装导航:
下载 tiled,然后解压缩,可以发现tiled.jar文件,使用java -jar tiled.jar命令来运行之。

4.快速使用导航:
(1)使用File->new,进入New Map Dialog对话框,其中可以选择Map的类型,设置Map size和Tile size,这和mapwin很类似。

(2)建立map之后,系统会默认分配一个layer,但是并没有Tileset,所以选择Tilesets->New tileset...建立tileset。输入Tileset名字后,选取“Reference tileset image”选项,浏览Tile image所使用的图片。其中的“Tile spacing”为设置Tile四边的边框,因为不常用,所以经常被设置为0。

(3)在增加了tileset后,点击左下角的按钮可以看到tile的调色板,这时便可以在调色板中选择合适的tile在map上构图了。

tile左侧的工具栏提供了快捷工具:move layer、paint、erase、fill、eye dropper(取色器)、select、缩放。而在右侧是类似photoshop的layer manger,用来新建layer、复制layer、锁定layer、隐藏layer。

eye dropper的使用方法有两种:一种是选择eye dropper工具,然后在map中选择tile;另一种方法更快捷-直接在map中的tile上点击鼠标右键。

(4)当map画好后,按ctrl+s可以将map保存为tmx文件。
(5)对map文件内容的解释:

        <?xml version="1.0" ?>        <map orientation="orthogonal" width="32" height="32" tilewidth="24" tileheight="24">          <tileset firstgid="1" name="Sewers" tilewidth="24" tileheight="24">            <image source="tiledweb/files/tiles_pipes.png"/>          </tileset>          <layer name="Layer 0">            <data encoding="base64" compression="gzip">              H4sIAAAAAAAAAO3NoREAMAgEsLedAfafE4+s6l0jolNJiif18tt/Fj8AAMC9ARtYg28AEAAA            </data>          </layer>        </map>

此文件表示了这个map只有一个tileset和一个layer,注意一下前面建立map和tileset时输入的数据不是所有都在这个文件中,因为使用默认的属性(如tile spacing)是不会保存在这个文件中的。
        由于一个tile可以被多个map引用,所以layer的data属性值使用base64编码、使用gzip压缩的一个32位整数的数组,它代表了tile的全局id--firstgid。每个tile内部使用自己的local id,而firstgid作为在多个map中区分tile的标识。
        
注意此软件没有导出为map数组的功能,只能使用View->Show Coordinates显示坐标。

5.优缺点:
优点:易用。使用xml规范作为map文件的书写规范有利于用户自定义修改和功能的扩展。
缺点:缺少与游戏开发语言的接口,还需要进一步的开发扩展。

四、参考资源:

mappy官方网站:http://www.tilemap.co.uk/index.html
Tiled官方网站:http://tiled.rpgdx.net/index.html
zlib官方网站:http://www.zlib.net/
libpng官方网站:http://gnuwin32.sourceforge.net/packages/libpng.htm

游戏地图编辑器使用指南相关推荐

  1. 开源游戏地图编辑器 Mepper

    Mepper 这是我在2009年参与的项目中开发的游戏工具, 由于我已经没有从事游戏开发, 所以整个项目暂时没时间更新了. Mepper可能无法直接使用在你的项目中. 如果你想寻找可以使用的地图编辑器 ...

  2. markdown 编辑器_Markdown 编辑器使用指南

    Markdown 编辑器使用指南 1.快捷键 加粗: Ctrl/Cmd + B 标题: Ctrl/Cmd + H 插入链接: Ctrl/Cmd + K 插入代码: Ctrl/Cmd + Shift + ...

  3. macos安装vscode_VS Code 代码编辑器入门指南:核心组件与概念

    作者:思考问题的熊 写在前面 如果当电脑只能装一个软件还需要尽量不影响日常学习工作时,不知道你的选择会是什么.我把这个看似「荒诞」的问题理解为「All-in-One」的升级版拷问. 这个问题陪伴了我很 ...

  4. UE3 后期处理编辑器用户指南

    后期处理编辑器用户指南 概述 打开后期处理编辑器 后期处理编辑器界面 菜单条 窗口 图表面板 关联菜单 属性面板 创建特效 默认 PostProcessVolumes(后期处理体积) Interpol ...

  5. 用pygame写像素游戏地图编辑器

    用pygame写像素游戏地图编辑器 像素游戏的地图 我使用一个矩阵来存储地图,像下面这样: [[1,0,0],[0,1,0],[1,2,0]] 不同的数字代表不同的物体,比如1代表一个房子,0代表路面 ...

  6. [转]2d游戏开发:游戏地图编辑器

    2d游戏开发:游戏地图编辑器   akinggw 金桥信息 2006-06-15 游戏地图编辑器   作者:akinggw 朋友们,大家好! 今天,我们将讲解游戏开发中一个重要的工具DD"游 ...

  7. 游戏地图编辑器,JAVA版简单实现

    魔兽争霸.星际争霸,这两款游戏相信大家并不陌生,在游戏中有地图编辑功能,只要编辑好地图我们就可以开始玩了,可见游戏地图在游戏中发挥着多么重要的作用,它承载这非常多的数据,比如地形标示,一些做得比较精密 ...

  8. QT实现简单的2d游戏地图编辑器

    QT实现简单的2d游戏地图编辑器 我写的这个地图编辑器主要实现了用键盘配合鼠标点击屏幕,间接生成一个二维数组,再将这个二维数组写入到文件中的操作,以直观.方便地对二维数组进行更改,以用作2d游戏的地图 ...

  9. [转]mapwin和Tiled(游戏地图编辑器)使用指南

    本文转自:http://www.oschina.net/question/12_5314 本文主要介绍目前开发游戏比较流行的两款工具mappy(mapwin)和tiled,分别介绍工具的安装.使用.优 ...

最新文章

  1. JavaScript Document
  2. 谈谈架构的本质和架构分类
  3. ​计算产业如何加速突破?鲲鹏开发者技术沙龙带来新答案
  4. 将matpoltlib绘制好的图片从内存中取出
  5. SpringBoot 2.0 + 阿里巴巴 Sentinel 动态限流实战
  6. 在表格中批量显示图片
  7. 键盘一键自定义组合工具_为开发人员提供社区,通讯和自定义工具的组合
  8. 兰州大学计算机调剂2020,兰州大学2020考研调剂公告
  9. 关于返回二维数组排序后序号数组的问题求解
  10. BookCorpus数据集爬虫
  11. 基于SSM的MSDN资源发布网站
  12. h5聊天页面 jquery_基于Jquery WeUI的微信开发H5页面控件的经验总结(1)
  13. Android 简历模板
  14. 1597: [Usaco2008 Mar]土地购买 斜率优化
  15. 用计算机如何判断闰年,php判断/计算闰年的方法小结【三种方法】
  16. 计算机硬盘检测不到,硬盘检测不到怎么解决
  17. 什么是“光照度(Illuminance)”?
  18. Latex脚注加超链接
  19. python中cut_pandas.cut
  20. 基于规则的语音合成中文文本前端设计

热门文章

  1. Notification介绍
  2. 《产品经理的20堂必修课》一第2章 围绕用户需求打造产品竞争力2.1 不同层次的用户需求...
  3. 别了,CentOS。以后只有Rocky Linux、CloudLinux和CentOS Stream
  4. Python——计算方差、标准差、均方差、均方根值、均方误差、均方根误差
  5. 《洛奇英雄传》新版战斗攻略技巧第一篇
  6. 大一到大四的超级实用网站(转载)
  7. 华为设备配置IS-IS的DIS选择
  8. 网络编程基础知识点总结
  9. “屏男屏女”?!今天你“屏”了吗?
  10. 算法分析课设(十一)博物馆守卫问题、世界名画陈列馆问题(分支界限法)