实验准备 迷宫游戏

学习目标:

要求游戏支持玩家走迷宫,和系统走迷宫路径两种模式。玩家走迷宫,通过键盘方向键控制,并在行走路径上留下痕迹;系统走迷宫路径要求基于A*算法实现,输出走迷宫的最优路径并显示。


学习内容:

如何显示游戏的图形界面?

如何生成随机的迷宫(利用prime算法)

如何用A*算法求解迷宫


学习产出:

A*寻路算法:

A* Pathfinding for Beginners - Artificial Intelligence - Tutorials - GameDev.net

二叉树的深度优先遍历:

  1.  选择一个靠近边缘的1作为起点,在它的周围随机找另一个黄色的1(这里的周围指的是上下左右4个方向)。找到就把他们联通,并且把两个1之间的0灰色墙)也变成通路,这里用红色来表示
  2. 选择一个靠近边缘的1作为起点,在它的周围随机找另一个黄色的1(这里的周围指的是上下左右4个方向)。找到就把他们联通,并且把两个1之间的0灰色墙)也变成通路,
  3. 把上一步终点的格子作为新的一个“起点”格子,不断循环第2步的过程……直到,找不到周围有黄色的1,就回溯,回到之前的位置,看看周围是否有黄色的1如果有,就按照2步骤,不断将黄色1变联通,接下来就是不停地重复上面的步骤,找到就联通,找不到就往回走
  4. 遍历完所有的点即可生成一个迷宫,然后再选择出口与入口,一个完整的迷宫就形成了。

     

 

基本图形界面设计:

可以跟B站的视频学习或这里也有一个有讲,我主要是跟视频学,我比较垃圾。

Java Swing 图形界面开发简介_XTS的专栏-CSDN博客_javaswing

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值