MMOG地图编辑器概要设计说明书1.doc

上传人:人*** 文档编号:562964344 上传时间:2023-09-20 格式:DOC 页数:14 大小:213.87KB
返回 下载 相关 举报
MMOG地图编辑器概要设计说明书1.doc_第1页
第1页 / 共14页
MMOG地图编辑器概要设计说明书1.doc_第2页
第2页 / 共14页
MMOG地图编辑器概要设计说明书1.doc_第3页
第3页 / 共14页
MMOG地图编辑器概要设计说明书1.doc_第4页
第4页 / 共14页
MMOG地图编辑器概要设计说明书1.doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《MMOG地图编辑器概要设计说明书1.doc》由会员分享,可在线阅读,更多相关《MMOG地图编辑器概要设计说明书1.doc(14页珍藏版)》请在金锄头文库上搜索。

1、TencentMMOG地图编辑器概要设计说明书希望大家喜欢!MMOG地图编辑器概要设计说明书拟制:Jim日期:2003-11-6审核:日期:深圳市腾讯计算机系统有限公司版权所有 不得复制第 13 页 共 13 页文档历史修订日期修订内容修订版本修订人2003-11-6创建V01Jim目录1.背景/目的42.地图规划42.1.概述42.2.地图类型42.3.地图坐标系52.4.地图分层53.地图技术实现73.1.概述73.2.地表层73.3.覆盖层93.4.修饰层93.5.物件层93.6.阻挡层103.7.事件层113.8.扩展层114.资源库的实现114.1.概述114.2.图素库114.3.

2、修饰库124.4.物件库125.地图编辑12MMOG地图编辑器概要设计说明书关键词:地图 编辑器 层 阻挡 摘 要:缩略语清单:参考文献名称作者编号发布日期1. 背景/目的为进一步加快公司进军娱乐线的步伐,公司成立MMOG项目组,进行MMOG的研发制作。本地图编辑器是MMOG地图的生成,修改和编辑工具。2. 地图规划2.1. 概述本章介绍地图的总体规划,包含地图类型,地图坐标系和地图层3个部分。2.2. 地图类型不同的游戏场景需要不同的表现手法,比如城镇中的居民房,杂货店等,地图面积比较小,但是却需要比较精美的美术表现又比如在野外,冒险场景,玩家喜欢打怪并且不但探索,地图的精细程度便有所降低,

3、但是地图需要比较大对应这2种不同的需求,我们地图支援2种不同的类型,如下l 完整型地图:美术直接制作完成整个游戏场景,我们称之为完整地图这样的地图适合在城镇,民房,商店等地方,往往是需要精美画面表现而场景尺寸不大的地方l 编辑型地图:由美术制作好不同的图形组件,使用地图工具合成而产生的地图,我们称之为编辑地图(名词).后面将会讲到不同的地图组件,如图素,物件等.这种地图一般使用在野外,冒险地等,往往是需要比较大的场景,同时画面精美程度要求不特别的地方.2.3. 地图坐标系地图采用3维坐标系,如下图:(图1)地图坐标系。坐标原点对应地图的起点。红,绿,蓝分别对应坐标轴X,Y,Z2.4. 地图分层

4、地图分为不同的层(Layer),每层分别实现不同的功能。图象方面,依照从下到上的顺序,依次为地表层,覆盖层,修饰层,物件层。数据方面,分别有阻挡层,事件层。地图的层是可以扩充的,随着后期发展的需要,可以增加更多的扩展层如下图:(图2)地图分层。灰色为数据层,蓝色为图像层,白色为待扩展的层以下分别介绍图中各层:l 地表层(Tiles Layer):地表层是地图的最底层,又叫图素层,是由统一规格不同美术表现的图素(Tile, 小片的图元),通过拼接组合而形成的图素是美术需要制作的图片组件之一.为了便于工具实现自动拚接功能,图素往往从尺寸规格和形状表现上有一定的要求.l 覆盖层(Covers Lay

5、er): 覆盖层是由一整张的位图,或者多张位图,或者多个位图动画,通过组合而成的覆盖层在地表层的上面,覆盖在地表层上。有些地图没有地表层,但是有覆盖层,比如完整型地图。最简单的覆盖层是一张与屏幕尺寸相同的位图,比如我们制作完整地图时,若完整地图尺寸刚好一屏大小,那么在底下的那层,便是最简单的覆盖层。l 修饰层(Beautify Layer):修饰层是由一些修饰图片,无规律的散步在地图上形成的修饰层在覆盖层的上面,用来表现一些特殊的地形地貌,比如地上的裂缝,残留的瓦片等l 物件层(Objects Layer):地图上的树木,房子,栏杆,路灯,花草,桌椅等等,都是地图上的物件由这些物件形成的层,就

6、是地图物件层在游戏进行中,地图上的NPC也是物件的一部分l 阻挡层(Mask Layer):地图上存在着不同的地形,有的可以让NPC站立和行走,而有些不能,并且,对应不同的法术,比如一个火球,有些可以让法术组件通过,有些则不能,我们称这类地图特征为阻挡特征为了标明地图上的阻挡特征,需要一份内部数据,我们将这份数据所形成的层,称之为阻挡层l 事件层(Events Layer):有时候地图上需要一些特殊的区域,当玩家走到该区域或者在该区域进行某些操作(比如使用某道具,或者只是鼠标点击)后,会触发某些对应的事件(比如召唤出怪物,切换地图等)这样的区域我们称之为事件区地图上所有的事件区组成了层我们称之

7、为事件层l 扩展层(Ext Layers):根据以后的需要,预先保留待扩展的层,原则上可以有无限多的层,目前保留26层地图编辑器将不同的资源按照一定的规则组合起来,形成统一的地图档案,并提供对应不同层的编辑功能,实现方便快捷的编辑操作3. 地图技术实现3.1. 概述地图采用2D和3D结合的技术实现方式。描述如下:1、 使用2D和3D工具如PhotoShop,3DMax,Maya等工具,制作地图的各个图形元素,并输出为2D的图像。2、 程序读取2D的图像,并依此作为3D纹理贴图,采用3D的着色上图方式展现。3、 地图整体观感为2D的画面效果。以下分别就地图的具体图层分别描述技术实现方式。3.2.

8、 地表层如上所述,地表层是由图素拼接而成。图1中,白色菱形格所示即为图素格。地表层由一个2维的图素矩阵组成。矩阵中每一个元素表示对应位置的一个地图图素。我们给矩阵中每一个图素标上2维坐标,我们称之为图素坐标。从原点O,分别沿着X轴正方向,Z轴正方向,对应图素坐标(X,Z)依次为(0,0),(0,1),(0,2),等等。如图3所示。图素的图像资料,则是作为贴图,透过纹理映射的方式,附着在每个对应的图素格上。图素图像为正方形,图片的宽度和高度尺寸均为2的N次方,目前暂定为64X64大小。不同的图素格上,可能贴上相同的图素图像。如图3中,A,B,C,D,E等表示该图素格上图素图像的类型。对应表现如图

9、4。(0,0) A(1,0) B(2,0) B(0,1) C(1,1) D(2,1) D(0,2) E(1,2) F(2,2) FX轴Y轴Z轴(图3)图素格示例。图素格建立在XOZ平面上,图中(0,0)等表示图素坐标,后面的A,B等表示该图素格所使用的图素图像类型。图素A图素B图素C图素D图素E图素F(图4)图素图像示例。图中,A,B,C,D,E分别为不同美术表现的图素图像。尺寸暂定为64X64。在实际制作中,为了便于实现程序自动拼接图素,这些图素往往需要按照一定的规则画出。因为这些具体制作规则比较复杂,将另作文档说明。另外,为丰富画面表现,可以考虑制作动画图素。3.3. 覆盖层覆盖层往往存在

10、于完整型地图中,作为地图的最底层,相当于编辑类地图的地表层。在贴图时,程序将位图按照不同的大小(均为2的整数次幂)切分,作为纹理图片贴图。地图表现效果覆盖层位图需要显示的部分在XOZ平面俯视图上,对应顶点坐标顶点组成菱形2D覆盖层位图,中间为需要上图区域(图5) 覆盖层实现方法左上部分为源图,右上为在游戏坐标系中实际表现的效果,右下为实现该效果时需要指定的顶点.在游戏坐标系中建立如图右下部分的菱形,菱形的顶点与源图顶点一一对应,将源图片作纹理映射,贴在菱形中. 这样我们可以得效果如右上图的画面展示.3.4. 修饰层修饰层和覆盖层的实现方式基本相同,不同的是修饰层图片在作纹理映射时是使用Alph

11、a贴图的.在实际游戏场景的上图过程中,地表层,覆盖层,修饰层会按照固定的顺序,先画在地图的底部.通过指定各个图元的深度,我们就可以完成这种顺序的指定了.3.5. 物件层物件层包含地图中所有的物件,如地图中的树木,桌椅,栏杆,花草等,还包含游戏中的NPC,法术组件等.所有这些物件,都按照一定的深度顺序,展示在游戏地图中.参考下图:(图6)物件层的实现方式下面将对该图进行说明。图中的长方体即我们的物体。首先,我们给物件标上底部深度线,取长方体与XOZ平面相交四边形的处于视线前方的2条线,如图中右侧红色线条。然后,我们依据深度线,将物体裁减为一定数量的平面。图中,物体被裁为2个平面,见长方体上标记的

12、2个矩形。这种裁减是意义上的,在实际贴图到屏幕的时候,将依据深度线,将源图按照裁减形状多次分别进行纹理映射而完成。在游戏地图中,将会有各种各样的物件,有些是事先制作并编辑完深度线放在物件库中的,有些则是每个地图中所独有的(比如完整型地图中的物件),而有些是地图人物和游戏法术组件。对应这些不同的物件,将有不同的深度线标注方式。当所有的物件均带有类似的深度线并以此进行裁减贴图后,地图上将出现很多很多的物件平面,这些平面组成了地图的物件层。3.6. 阻挡层阻挡层是标记地图上阻挡属性的数据层。 为了标记地图上的阻挡属性,我们将建立一种叫做阻挡格的数据,一个阻挡格对应地图的一小块区域。由这些阻挡格,形成

13、一个2维的矩阵,这个2维矩阵将涵盖整个地图区域。这个2维矩阵即我们的阻挡层。 我们取阻挡格的大小为1/4图素大小。并且,阻挡层矩阵的坐标关系保持和图素层一致。 每个阻挡格带有该格的阻挡属性,使用一个字节表示。包含人物是否可通过,地表法术是否通过,空中法术是否通过等。3.7. 事件层我们使用凸多边形来标记地图的事件区域,每个时间区使用一个凸多边形。对应每个区域,将记录该事件区的事件编号,对应事件类型及其数据等。地图上所有的事件凸多边形,形成整个地图事件层。3.8. 扩展层扩展层将根据未来的具体需求进行扩展。4. 资源库的实现4.1. 概述资源库的作用是缩小游戏的图量,尽可能在不同的地图中,重用地

14、图图片资源,节省安装时的磁盘空间和运行时的内存空间。对应上述的地图各层,我们需要建立3个不同的资源库,分别是图素库,修饰库和物件库。以下对这3个库进行分别说明。4.2. 图素库图素库中包含了游戏中所有编辑型地图中的地表层的图素资源。从图素库到地图表现的流程如下:图素装载器地图地表层(图素ID矩阵)ID 资源映射图素库(文件)图素缓存器(图7)图素装载流程我们使用一个整数ID来表示地图上的每个图素,这样地表层数据实际上是一个图素ID矩阵。 为了实现从ID到实际图素资源文件的对应,我们建立一个ID至图素资源的映射机制。同时,在使用这些图素资源时,为了多次引用同一个图素资源时能够节省内存,我们需要一个图素资源缓存器。所有这些,我们使用一个图素装载器来实现(图7)。图素在图素库中,依照一定的规则存放。4

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号