2015-06-02 66 views
1

幾個月前我爲RTS遊戲構建了基於網格的A *系統。我應用基本的優化,儘可能使用HashSets和啓發式,儘管很快我會尋求進一步優化它,因爲當有多個單元同時請求路徑時,它會減慢速度。.NET A *尋路優化,序列化?

反正我注意到Aron Granberg的A *系統有一個圖數據的序列化類,而我的圖只是一個Node類的二維數組,Node()包含各種數據,比如它是否可行走。我假設這個序列化是爲了保存/加載圖表,儘管我可以利用序列化以某種方式進一步優化我的路徑搜尋。或者也許還有一些我可以開始深入研究的其他優化技術?

回答

2

你說得對。序列化僅用於將文件加載/保存到文件/從文件保存,以便您可以在運行時對它們進行預處理。

我不知道你正在使用A *的實現。但對於性能優化,你可以看看herehere

+0

好吧,很酷。這些鏈接非常有幫助,最終花了一天的時間閱讀並重寫我的A *系統,看起來運行得更好。毋庸置疑,代碼更加清晰,我將能夠進一步優化並稍後進行修改。感謝你的回答! – Crayz