我正在寫一個遊戲,其中一個角色在隨機生成的地圖上實時移動(因爲它被顯示)。這導致我產生了一個有趣的數據結構問題。地圖是以角色的形式生成的(可能是20-60個瓦片),因此,在有數據的地方,數據非常密集,並且全部位於網格中。然而,如果沒有數據,可能會有巨大的未生成空間。例如,角色可以走在一個巨大的圓圈內,在廣闊的空白空間周圍創造一圈瓷磚。網格的最優高密度二進制空間分區
簡單的矩陣會產生大量不需要的開銷,並浪費大量空間。但是,典型的BSP似乎會導致性能下降,因爲數據密集且類似於網格。
你有什麼建議?矩陣 - 四叉樹 - 兩者的混合?
由於您的示例代碼沒有評論,我沒有真正看它很多...從你是什麼介紹一個非常簡單的解決方案。將你的景觀劃分爲矩陣,並使用相對座標(對演員)來檢索數據。這樣你最多隻能生成/檢索4個矩陣的數據,而其他的則未初始化。 – 2010-08-03 07:41:06