很早以前就写过一个类似的程序,但当时采用是从迷宫的入口处进行深度优先搜索的算法来生成迷宫,这种算法不能确保在指定的起点和终点肯定存在一条有效的路径(如果从起点和终点同时进行搜索也许会好点)。这次受到http://www.sulaco.co.za/maze.htm这篇文章的启发,同样是利用DFS算法,但从内部随机一点开始进行搜索,这种方法可在任意起点和终点(都是边界点)之间生成唯一的一条路径,而且生成速度很快,效果也不错。这里迷宫生成和寻路算法都是用DFS。如果你对迷宫很感兴趣,可以看看这上面的文章http://www.astrolog.org/labyrnth/algrithm.htm,相信一定会惊呀不已。
程序开发:绘图用OpenGL,窗口管理用的是GLUT。