Unity:在Hexgrid中纹理海岸线

时间:2016-02-29 15:19:55

标签: c# unity5 hexagonal-tiles texturing

我是初学程序员,也是Unity的新手。我目前正在使用Unity5练习六角形建筑。我目前的hexgrid由扁平的六边形组成,它具有草地或海洋2D纹理。 (Current hexgrid

我希望在我的六边形网格中有一个沙质海岸线(在草地砖上,海洋瓷砖作为相邻的瓷砖)。

我的问题是:实现这一目标的最佳,最有效的方法是什么?

我想为每个可能的悬崖构造一个纹理,但这将是大约64种不同的纹理,这取决于草原邻近的多少海洋瓷砖以及从哪个方向。

我还需要"模糊"沙漠和草原六角形以及深海和浅海卦之间的纹理线,我不知道该怎么做......

任何建议表示赞赏。谢谢!

1 个答案:

答案 0 :(得分:0)

我认为你应该只需要4或6个纹理。使用六角形,你只能在陆地/海角有两个场景。海岸线要么形成半岛(凸起的陆地/凹海),要么形成峡湾(凹地/凸海)。

因此,从瓷砖边缘向内绘制海滩的两个主要梯形纹理将覆盖半岛上的所有陆地海滩和峡湾上的所有海滩。

在相反的情况下,你只需要一个纹理的小三角形延伸来填补梯形之间的空隙。

这就是我的意思:http://imgur.com/08qlJMy

来源:我曾经试图通过分析纹理文件来弄清楚Alpha Centauri如何绘制地形。我有理由相信他们是这样做的。

至于处理沙漠,草地,海角,我相信他们首先混合了陆地地形,然后覆盖了海岸线。