如何实现英雄无敌的地图(200分)

  • 主题发起人 主题发起人 yourname_0
  • 开始时间 开始时间
Y

yourname_0

Unregistered / Unconfirmed
GUEST, unregistred user!
在英雄无敌地图编辑器里面,当放入一块地形,它会自动扩张与周边融合,这个该如何实现?
困绕多时,实在没头绪
PS:觉得分数不够我可以把我的所有分都用在这上面
 
他不是融合。。是用其他的过渡图片替换了周围的图片。。。。-_-!
 
能详细说明吗?
 
倒。。很简单的 九宫格你知道吧
X X X
X 1 2 3 X
X 4 5 6 X
X 7 8 9 X
X X X
你放入的地形就是5的位置,周围地形就是X(包括数字位置)
而那些过渡图片将要替换的,就是12346789的位置
周围那些就是已经存在的地形,每种地形肯定有自己的代号
同时也存在不同地形的过度图片,比如雪地向草地过渡的图片等
所以放入5以后,判断周围的12个X地形代号是否不同,如果不同则用对应的过渡图片来代替
 
呵呵 有趣 楼上的说的有理
 
找一个特慢的电脑来操作,就能看到编辑器里面图象变化过程
 
楼上的这招不错.:D
 
喜欢英雄无敌, 熬过多少个夜晚.. 关注..
 
没过程的。。。。直接变
我用486玩过。。。电脑考虑一下要等10分钟。。还是中等难度
地图编辑器打开一张图要15分钟以上。。。不过换地形也是一下就变了

想想看,英雄无敌3是什么时候的游戏,那时候的2D游戏基本都是动态贴图片的
586+64M内存能流畅跑起来的游戏,你觉得他的地形可能是动态算出来的吗
 
hs-kill说的正是我所想的办法之一,但是,你注意没有,所有的地形其实都是一种(或几种)——中间类似“X”形的地形(几种指的是这个X有区别,甚至到是个圆洞),只不过颜色不同,那么,我该怎么填充颜色,不知道它是不是256色的(不过好象不是256色的),可以提取颜色表。应该有底色然后把各种颜色与运算上去,图形也是,是基本地形(以此来指比如“X”的地形,这个地形如何获得?应该是绘出来的吧)和每钟地形(这个指草地、雪地等)的地形叠加(这个叠加是个什么算法呢?不会简单的是个与运算吧),
——欢迎大家继续关注
 
而且,我还想把地形分等级,来实现谁向谁扩张,比如水是最低级,它周围的地形就向它扩展过来。再说,以左上角图形(1位置)又该是怎样的左边地形与上方地形的与运算?
 
左上角的地形无所谓啊,不知道你注意过没有,边缘地形是哪种地形都是很自然的

至于你说几种地形一样,只不过颜色不同的,呵呵我认为仍然是不同的贴图

你说的地形叠加,没有所谓的叠加,草地和雪地是平等的,你所谓的叠加可能是指一大片雪地上只有一块草的情况,那也是只有那一块是雪地向草地过度

叠加只出现在地型/地貌/宝物/英雄/建筑 等不同属性的物体上,同类型是不存在叠加问题

不知道你是否接触过GIS相关的东西,整个地图就是X*Y大小的矩形每个(x,y)点都存有定义好的地形图片代码
而其他东西都属于各自的层,每个物体描述都带有在地图的x,y坐标
 
恩,hs-kill说的很是不错啊(GIS接触过),开辟了我的新认识,我一直以为它的地图是通过函数绘出来的(因为我感觉它的地形一样,那么,只要导入不同的颜色表即是不同的地形,非常节省资源),你说到GIS,它倒也可能真是你所说的使用的贴图方式啊
 
不是可能,而是本来就是这种方式

再给你个连接:http://school.ogdev.net/ArticleShow.asp?id=4601&categoryid=1
这里介绍以前的2D游戏时代几个经典游戏的地图编辑器,其中有一些地方介绍到了其原理

给分吧。。。。
 
诶,可这并不是我想要的答案呐~~~
我希望的是实现(最好用代码写出来),而不是搜集这么点资料
分我不吝啬,但我不想结帖,hs-kill想要分的话想个办法我先给你50分吧
 
-_-! 不是我打击你,这个与代码实际关系不大

主要你要有个好美工来帮你设计地形图片并编号,至于贴图,就用普通的2维数组存编号就行了

分无所谓了。。。。
 
啊呀,原来是“网中戏”,是个同道中人啊,我以为是“网中找”,以为是找谁给分,没给你分分,不好意思哈,我这是第一次结贴,没注意~~~~~,失败。
 
后退
顶部