请教:地图编辑器的原理

waittingforyou 2003-10-09 11:03:39
地图编辑器怎么做出来的?
...全文
380 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
ggj9921129 2003-11-03
  • 打赏
  • 举报
回复
地图编辑器的编写,和游戏的规划紧密联系在一起的。
其功能是由游戏策划、程序、美工共同制定的。所以一个地图编辑器究竟要设计它要包含哪些功能,就要看你自己的想法了。楼上的所说的,知识地图编辑器的功能之一
火云洞红孩儿 2003-10-31
  • 打赏
  • 举报
回复
另外,地图编辑器的开发不需要什么工具。关键是取出相应地图块(16*16、32*32或64*64),贴到屏幕相应位块。然后经过一定的计算方法把此地图索引存入数组的相应位置。
然后保存为一个地图文件就行了!
火云洞红孩儿 2003-10-31
  • 打赏
  • 举报
回复
其实并不难:

给你介绍一个简洁明了的源程序。包会。
http://www.gdiy.com/Member/UPloadfile/download.asp?id=202
蟾宫伐桂 2003-10-31
  • 打赏
  • 举报
回复
看帝国时代的地图编辑器,微软把森林,河流,军事单位做成绘图的刷子。跟设计画笔程序是一样的,不需要什么特别的工具,只要有好的素材就好了。
DarthVader 2003-10-26
  • 打赏
  • 举报
回复
楼主,为什么要采取树型结构呢?能详细解释一下思路吗?
liweizheng 2003-10-26
  • 打赏
  • 举报
回复
地图编辑器的开发需要使用什么工具?是不是要搜集大量的素材才可以?在网上是否有成功开发的先例?
各位老鸟请慷慨解囊,不甚感激!
liflyboy 2003-10-16
  • 打赏
  • 举报
回复
我的思路:
先做一个地图元素表的编辑器,把那些要在地图编辑器用到的各个图形组织成一个树型结构,然后做地图编辑器,用地图元素表文件中的元素来搭建地图,并加入其他的地图控制信息,便于地图引擎代码工作。
realwolf 2003-10-14
  • 打赏
  • 举报
回复
数组加结构就能出来个地图编辑器。
Skt32 2003-10-11
  • 打赏
  • 举报
回复
地图编辑器
http://www.vcfan.com/vc/codes/codes_game/gameb15.zip
Skt32 2003-10-11
  • 打赏
  • 举报
回复
战棋游戏的地图编辑器
http://www.vcfan.com/vc/codes/codes_game/gameb37.zip
DarthVader 2003-10-09
  • 打赏
  • 举报
回复
一个小例子:)

//-----------------------------------------------------------------------------
// Name: class CMap
// Desc: Class to construct the main map for a tile-based game
// All things you need to operate a map are included.
//-----------------------------------------------------------------------------

class CMap
{
public: CMap();
virtual ~CMap();
BOOL Create( int nPosImage, int nLevel = 0 );
VOID Destroy();

BOOL LoadFromFile();
VOID LoadPrimitive();
VOID Check();
VOID Validate();
BOOL SaveToFile();

TCHAR GetTile( int row, int col ){ return m_aMap[row][col]; }
VOID SetTile( int row, int col,TCHAR cContent ){ m_aMap[row][col] = cContent;}
BOOL CanPass( int row, int col );
BOOL CanHit( int row, int col );
BOOL CanDestroy( int row, int col, BOOL bDestroyConcrete );


HRESULT Draw();
VOID DestroyTile( int row, int col );

private: TCHAR m_aMap[MAP_H][MAP_W];
CSurface* m_pTileImage;
RECT m_rcFrame[NUM_TILES];
UINT m_nLevel;
UINT m_nPosImage;

};
DarthVader 2003-10-09
  • 打赏
  • 举报
回复
高级的地图编辑器本身就是一个引擎
比如英雄无敌3 只要你把单位放上去 就可以对其进行编辑 响应游戏中的事件
再如星际争霸 可以让用户自己编写脚本 就更完善了
好的地图编辑器 可以让游戏的可扩展性增加 生命得到延长
大家看看网上丰富的自编地图就知道了
DarthVader 2003-10-09
  • 打赏
  • 举报
回复
最简单的地图编辑器:(以坦克大战为例)
定义一些地形 比如砖块 钢筋 树林 河流
要有一个矩阵用于代表地图 其中的元素是一些索引 对应相应的地形材质
(复杂的地图可能要分层,而且物体大小也不是规范的,这时用稀疏矩阵更好)
之后要有一个GUI 可以让用户选择地形并自行描绘 还可以修改(擦除)、 检验合法性等等
另外地图编辑器还要提供存盘,载入等功能(必要的话可以编写自己的文件格式)
liflyboy 2003-10-09
  • 打赏
  • 举报
回复
我正在尝试,不知道能不能行呢!如果成功了再告诉你原理!
waittingforyou 2003-10-09
  • 打赏
  • 举报
回复
谢谢以上各位朋友了。
ttmmdd 2003-10-09
  • 打赏
  • 举报
回复
就象DarthVader说的,各个游戏的地图编辑器是不同的.
如何设计还要看你的要求和游戏设计的要求.

8,301

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧