【问题标题】:How can i relate different meshes through c# script in unity3d?如何通过unity3d中的c#脚本关联不同的网格?
【发布时间】:2014-12-03 22:24:42
【问题描述】:

我是一个创建棋盘游戏的统一新手。董事会将由划分为领土的岛屿组成,就像大陆处于风险中一样。我已经划分了以下设置,但我不知道它是否是最好的方法,如果不是,请指出正确的方向。

我遵循本教程:http://games.ucla.edu/resource/unity-3-importing-assets-board-making/ 并创建了 3 个岛网格:

现在我想获取每个图块的相邻图块。例如在图像中,tile1 旁边的瓦片(包括角瓦片)。我需要这些信息来告诉玩家他可以入侵哪些领土。为每个包含相邻图块的图块创建一个列表让我想到了,但我发现它是一个糟糕且次优的解决方案。

有没有更好的方法来实现这一点?

【问题讨论】:

  • 如果瓦片在每个岛上都是严格的矩形网格,那么您可以制作一个二维数组来存储对瓦片的引用,并将网格坐标存储在每个瓦片中以便快速查找邻居。跨度>

标签: c# unity3d mesh


【解决方案1】:

我为类似问题所做的与您在问题中建议的相同。然而,我并没有在检查器中盲目地分配列表,而是编写了一个编辑器脚本,该脚本将根据瓷砖的距离自动查找和分配列表。然后,如果有任何差异,我会手动更改。

【讨论】:

    【解决方案2】:

    最后我做了阿古曼德在他的评论中建议的:

    如果瓷砖在每个岛上都是严格的矩形网格,那么你 可以制作一个二维数组来存储对瓦片的引用,还可以存储 每个图块中的网格坐标,用于快速邻居查找。

    我为每个岛使用了一个数组结构,其中每个 Tile 将分配其相邻的 tile。

    谢谢你们俩。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-07-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多