作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是一名初级程序员,也是 Unity 的新手。我目前正在使用 Unity5 练习 hexgrid 构建。我当前的六边形网格由平坦的六边形组成,它们具有草原或海洋 2D 纹理。( Current hexgrid )
我想在我的六边形网格中有一条沙质海岸线(在以海洋瓷砖作为相邻瓷砖的草原瓷砖上)。
我的问题是:什么是最好、最有效的实现方式?
我想为每个可能的海岸瓷砖制作一个纹理,但这将是大约 64 种不同的纹理,具体取决于草原相邻的海洋瓷砖数量以及从哪个方向。
我还需要沙漠和草原六角形之间以及深海和浅海六角形之间的“模糊”纹理线,我不知道该怎么做...
欢迎任何建议。谢谢!
最佳答案
我认为您应该只需要 4 或 6 个纹理。使用六边形,您只能在陆地/海洋角落有两种情况。海岸线正在形成一个半岛(凸陆地/凹海)或峡湾(凹陆地/凸海)。
因此,从瓷砖边缘向内绘制海滩的两个主要梯形纹理将覆盖半岛上的所有陆地海滩和峡湾上的所有海滩。
在相反的情况下,您只需要该纹理的一个小三角形延伸来填充梯形之间的间隙。
这就是我的意思:http://imgur.com/08qlJMy
来源:我曾经试图通过分析纹理文件来弄清楚半人马座阿尔法星是如何绘制它的地形的。我有理由相信他们就是这样做的。
至于处理沙漠、草地、海角,我相信他们首先混合了陆地地形,然后覆盖了海岸线。
关于c# - 统一: Texturing a Shoreline in a Hexgrid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35703108/
我是一名优秀的程序员,十分优秀!