天天看點

關于遊戲中服務端erlang尋路---AStar+直線

遊戲介紹:一款可多人同屏的SLG, 每個玩家帶自己的隊伍在地圖上尋路,確定資料絲毫不差,玩家看到的畫面都是一緻的~

要求:同屏人數要求 20人,場景尋路單元20*5 + 怪物數量~~單場景極限150個機關

思路:1、地圖導成0~1檔案,0不可走、1可走

           2、起點----終點,計算直線是否可走,是:走直線;否:步奏3

           3、精度設定5~8(自行決定),用AStar計算目标點路徑,然後截取最遠可走的直線

坑:1、時間---距離計算; 2、精度

在網絡條件不好的情況下需要用戶端做平滑處理的,用戶端實際所見跟服務端計算還是有5米範圍的誤差,需要定時矯正,盡量做到精确~~~~通信方面,每次告訴用戶端要去的目标,不用實時更新坐标,另外停下來的時候,通知下用戶端

PS:還有一種做法,直接用C++封裝好的recast算法庫~前人有使用過,到我手上已放棄,hold不住(哭臉),有好的思路,歡迎留言,謝謝~