迷宫生成
Posted 卧龙浪士
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了迷宫生成相关的知识,希望对你有一定的参考价值。
回溯生成迷宫方法
1.将起点作为当前迷宫单元并标记为已访问 2.当还存在未标记的迷宫单元,进行循环 1.如果当前迷宫单元有未被访问过的的相邻的迷宫单元 1.随机选择一个未访问的相邻迷宫单元 2.将当前迷宫单元入栈 3.移除当前迷宫单元与相邻迷宫单元的墙 4.标记相邻迷宫单元并用它作为当前迷宫单元 2.如果当前迷宫单元不存在未访问的相邻迷宫单元,并且栈不空 1.栈顶的迷宫单元出栈 2.令其成为当前迷宫单元
随机普利姆生成迷宫
1.让迷宫全是墙. 2.选一个单元格作为迷宫的通路,然后把它的邻墙放入列表 3.当列表里还有墙时 1.从列表里随机选一个墙,如果这面墙分隔的两个单元格只有一个单元格被访问过 1.那就从列表里移除这面墙,即把墙打通,让未访问的单元格成为迷宫的通路 2.把这个格子的墙加入列表 2.如果墙两面的单元格都已经被访问过,那就从列表里移除这面墙
以上是关于迷宫生成的主要内容,如果未能解决你的问题,请参考以下文章