.NET A* 寻路优化、序列化?

.NET A* Pathfinding optimization, serialization?

几个月前,我为一款 RTS 游戏构建了一个基于网格的 A* 系统。我应用了基本优化,包括使用 HashSet 和启发式算法等等,不过很快我会进一步优化它,因为当有多个单元同时请求路径时它确实会变慢。

无论如何,我注意到 Aron Granberg 的 A* 系统对图形数据进行了序列化 class,而我的图形只是一个节点 class 的二维数组,Node() 包含各种数据,例如就好像它是否可以步行一样。我假设此序列化是针对 saving/loading 个图表,但我可以以某种方式利用序列化来进一步优化我的寻路吗?或者我可以开始研究其他一些优化技术?

你是对的。序列化仅适用于 Loading/Saving 图 to/from 文件,因此您可以在运行前对其进行预处理。

我不知道您使用的是什么 A* 实现。但是为了性能优化你可以看看here and here