所以,我在考慮製作一個簡單的隨機世界生成器。這個發生器會創建一個起始「單元」,它有一到四個隨機出口(在基本方向上,像迷宮)。在決定完成這些退出之後,我會在每個出口處生成一個新的隨機「單元格」,並在玩家接近世界尚未生成的部分時重複。這個概念將允許一個「無限」的世界各種隨機生成的世界。然而,我不確定如何在內部最好地表達這一點。隨機世界的數據結構
我使用C++(這並不重要,我可以實現任何必要的數據結構)。起初,我想過使用一種有向圖,其中每個節點都將邊定向到周圍的每個單元,但如果用戶在世界中找到一個點,回溯到這個點,那麼這可能不會奏效從另一個方向點。世界可能會做一些奇怪的事情,比如在一個地方生成兩個單元格。
對於這種情況,哪種數據結構可能最有效?還是我在隨機的世代中做一些真正愚蠢的事情?
任何幫助將不勝感激。 謝謝, Chris
我不能相信我沒有想到這一點,它的這樣一個簡單的解決方案和快速。 – 2010-10-22 17:02:52
正如@Nathon提到的一個新單元格一樣,一定要檢查相鄰單元格是否存在,並根據需要創建/防止進入這些相鄰單元格的門。 – jholl 2010-10-22 17:09:51