【奇正游戏×史图馆】《兵法 战国篇》开发日志——地图制作(一)

如果想支持一下我们,

可以在这里添加一个愿望单:https://store.steampowered.com/app/1270100/_/

或者点「关注」能看到更新日志。

QQ群也可以了解开发情况:991942345

如果你迫不及待想玩bug,可以在这里加入内测:https://afdian.net/@qizhengyouxi



在确定了基本设计与需求后,地图就开始进入实际的制作与测试。

地图是这个游戏非常重要的一个组成部分,在制作的过程中有许多的曲折,我在这里分享一下整个地图制作的过程,与各位互相学习。

【地形划分】

因为需要地图的地形尽可能真实,尽可能细致,因此需要基于真实地形进行制作。那么最基本的就是要获得真实地形以做参考。


获取并拼接卫星地图

能找到的比较好的卫星地形图,我知道的有两个,①Google Map,②天地图,这两者各有一些特点。

Google Map卫星地形图


天地图卫星地形图

Google Map的地形基本以黑白显示,更易于辨别地形的陡峭程度,同时还包括了河流的显示,但是随着镜头移动,地图本身会产生微小的变形,比例尺也会变化,使得拼接时不同位置的截图之间会有一点细微偏差,截图之间不能完美重叠。

天地图则没有截图偏差的问题,还可以选择显示或隐藏城市道路,但是在地形模式下是看不到河道的(也可能是我没找到开关),另一方面天地图的高度渲染效果更容易看出海拔的变化,但是对于局部地形的陡峭度不如黑白的容易辨别。

相对来说天地图或许更加合适,但因为知道天地图的时间较晚,当时已经使用了Google Map,所以我还是继续使用Google Map的地形图作为参考。

因为没有找到比较方便的可以快速获取并拼接卫星高度图的方法与工具,所以最终采用的是「截屏后在Photoshop中进行拼接」这种比较朴素的方式得到高清晰度的地形图。

得到的拼接效果如下:

地形图拼接效果


地形图拼接效果——局部

但是这个图的比例尺的缩放范围非常大,究竟要选择多高的精度比较合适是需要考虑的,而判断的方法就是将游戏中所使用的格子贴在地形图上,然后协调两者的大小比例,找到一个比较合适的比例尺。

在这个阶段最终确定的比例尺大约是「每110像素=10英里」。

地形图与格子的比例


需要一提的是,这里的格子比现在使用的要更小,主要是因为在实际测试中,因为格子数量太多,会有一定的卡顿,对内存的消耗也稍高,最终只得妥协减少格子的数量,所以格子就相应的变大了。

目前的一个格子的直径大约相当于现实的六七公里左右,整个战国时期的地图大约能够布满36万个格子,在减少格子之前大约有近百万格。


地图分割

以上面确定的比例尺拼接起来的图片,分辨率达到了「46080像素x34560像素」,这个大小的图片编辑时的效率会受到比较大的影响,保存和读取也会非常缓慢,为了提高制作的效率,我将整个地图进行了切分,拆分成了36块「5760像素x4320像素」的小块,并进行了编号。

地图分割

因为这一作是东周时期的历史,中国以外的部分都是次要的,因此基只需要挑出必要的部分即可,剩下的在需要时再补完。

目前使用到的地图,大概是F4-C7这个范围的地图块。


划分不同地形的分块

在有了基础的卫星地形图之后,接下来需要对不同地形进行分类。

现实中的地形变化和影响极为复杂,要在游戏中进行表现,就必须进行「简化」。所以我们将各种复杂的地形简化成了「平原」、「丘陵」、「山地」、「高山」四种,然后在卫星地形图上用不同的颜色加以区分。不填色的代表「平原」,浅绿色代表「丘陵」,土黄色代表「山地」,红色代表「高山」。

同时还有一种视觉上相对特殊的侵蚀地形用翠绿色表示,最主要的这类地形就是黄土高原的河流侵蚀地形。但是在数据上这样的侵蚀地形只作为「山地」或「丘陵」处理。

局部地形划分效果


不同的地形之间划分的依据,没有严格的数据区分,基本上依靠视觉辨别地形的陡峭险峻程度,凭感觉对地形进行划分。基本的特点就是,颜色越深、对比越强烈的山,就越陡峭。

地形划分与原始图对比


【水域与道路】

地形的构成部分,除了山脉起伏以外,就是江河湖海了。同时如蜀道等穿山而过的重要道路也需要专门画出,以便制作时在山中留出道路。

因此在完成地形的划分之后,接下来还需要将重要的河道与道路也画在卫星地形图上。


确定必要的河流、湖泊和道路

第一步需要确定需要绘制哪些河流与道路。

首先是道路,关键的道路基本就是蜀道、太行八陉、豫北通道这几条。

重要道路示例

然后是河流湖泊,古时的河道与现在大部分不会有太大的差异,除了黄淮流域。

黄河以“善淤、善决、善徙”著称,有“三年两决口,百年一改道”之说。因此要尽可能准确的还原不同时代的地理情况,黄河河道是个关键点。

黄河下游的改道范围北至天津,南至山东无棣,一直在这个范围内飘忽不定,同时也因为黄河的冲积使渤海西侧海岸线不断向外延伸,陆地面积逐渐扩大至今天的状态。

这里以《中国历史地图集》为参考依据。因为格子还不够小,为了避免河流在地图上的密度过大,除了有特殊历史意义或涉及重要战例的小河流外,要尽可能将较为次要的支流剔除,只保留主要的河流。

河流图

需要注意的是,这张图上的河道与湖泊有一些错误,主要的问题集中在黄淮流域,与战国时的河道偏差较大。这些错误会在将来合适的时候予以修正。


确定海岸线

战国时的海岸线与现在的差别主要在珠三角、长江入海口以及渤海沿岸。

这部分同样也是以《中国历史地图集》作为参考,重点还原古今不同的海岸线,其余部分基本按照现代海岸线描绘即可。

海域图


几个古今差异巨大的海岸线对比

渤海区域海岸线


长江入海口海岸线


珠三角区域海岸线

最终完成的地形参考图效果如下:

地形划分效果图

到这里,地图制作的初期准备就基本完成了,之后的制作过程中基本就是依靠现在所准备的东西进行。

本文为我原创

-- --
  • 投诉或建议
评论