任何人都知道用 C# 实现的简单算法来检测 2D 游戏中的怪物组。
前任:
char周围100范围内有怪物。我想检测哪些怪物在彼此范围 2 内,如果至少有 5 个在一起,则在该位置使用效果区域技能。否则使用单目标技能。
最好有一个实现的链接,最好是 C#。我只是迷失了阅读维基百科的文章。
编辑:
“你的问题不完整。你到底想做什么?你想找到所有组吗?最大的组?任何组,如果有组,没有其他组?请更具体一些。” ——吉拉德·霍赫
我想找到主角周围 100 个单位范围内的所有群体。如果至少有 5 个或更多怪物都在彼此 2 个范围内,或者可能在距中心怪物 10 个范围内,则应形成组。
因此,结果可能应该是一个新的组列表或潜在目标位置列表。
一个非常简单的聚类算法是k-mean算法。它像是
- 创建随机点
- 将所有点分配给最近的点,并创建组
- 将原始点重新定位到组的中间
- 多次执行最后两个步骤。
例如,您可以在这里找到一个实现,或者只是谷歌搜索“kmean c#”
http://kunuk.wordpress.com/2011/09/20/markerclusterer-with-c-example-and-html-canvas-part-3/ http://kunuk.wordpress.com/2011/09/20/markerclusterer-with-c-example-and-html-canvas-part-3/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)