我從很久以前就對自動生成地圖很有興趣.
具體來說,是玩Minecraft的時候.
從小屋的紀錄來看,是2012年的事呢.
5年...真久啊.
果然什麼事都不是一蹴可及的呢.
總之我在網路上看到一些方法,
實驗算是成功吧?
所以分享一下演算法的圖解步驟.
將生成的迷宮以洞窟演算法加工的話會生成更更有趣的迷宮.
洞窟演算法的步驟如下:
1) 生成一個地圖,其中每個方格都被牆壁填充。指定一個位置作為起點,將這個位置變成空地。
2) 在地圖上除了空地之外的隨機一點生成一個crawler,記錄生成過的crawler的總數
3) 讓這個crawler在地圖上行走,每一步移動一格,方向隨機決定,直到碰到空地為止
4) 將crawler碰到空地之前的那一步所在的牆壁變成空地
5) 重複3)和4)直到生成的crawler的數量 = 指定的地圖面積-1
最終得到的將會是類似楓葉上的脈絡那樣的叉狀岩洞。每條分叉都會比較狹窄並且非常不規則。所以可以考慮在生成岩洞甬道之後在合適的位置增加洞穴
成果如下:
大概就是這樣.
參考資料: