c#算法查找具有特定类型的最近的图块

时间:2016-05-11 19:26:34

标签: c# algorithm grid-layout

对不起标题,但我不知道如何用一句话来描述我的问题。

所以基本上我想创造一些东西来制作随机的地下城。我在2d网格上随意放置房间,并为每个房间添加门。然后我得到了第一扇门,并试图找到最近的另一扇门,但我找不到一个好的算法,我尝试了修改版本的*,并且还看了洪水填充,但这不是我需要的。我想到了第一扇门周围的某种螺旋形状,并检查我们通过的每块瓷砖,看看它是否是一扇门。如果有帮助的话,我会列出所有级别的门,但有很多,所以我不认为检查每扇门的距离是个好主意。

有没有人知道是否有一个好的算法呢?

2 个答案:

答案 0 :(得分:0)

如果游戏将其对象存储在quadtree中,则可以搜索通过邻近区分优先级的场景中的现有项目。可以搜索特定类型的对象,而不是搜索冲突。这可以使用C#中的is operator来完成。这个问题可能更适合Game Development Stack Exchange

答案 1 :(得分:0)

那么你需要找到具有特定属性的最近的图节点吗?

BFS(广度优先搜索)是你的朋友。