- 0
- 0
- 约3.8千字
- 约 23页
- 2017-11-27 发布于广东
- 举报
第19-20课 游戏常用算法 —算法课程名称 Lesson Title游戏常用算法学习者等级 Learner Level 专业能力认证课程模块 Module 算法本课时长 Duration 225分钟学习者背景 Learner Background本课程要求学习者熟悉Unity界面、学完应用能力认证课程基础阶段。教学目标 Objectives? 扫雷游戏主要算法(递归算法)? 对对碰游戏的主要算法? 俄罗斯方块游戏的主要算法? A*寻路算法主题 Topics 扫雷游戏 对对碰游戏 俄罗斯方块游戏 A*寻路算法扫雷游戏一个过程(或函数)直接或间接调用自己本身,这种过程(或函数)叫递归过程(或函数)递归的概念:分析:n的阶乘n! = n * (n-1) * (n-2) * ...* 1(n0)扫雷游戏递归满足2个条件:有反复执行的过程(调用自身)有跳出反复执行过程的条件(递归出口)n的阶乘n! = n * (n-1) * (n-2) * ...* 1(n0)int recursive(int i) { int sum = 0; if (0 == i) return (1); else sum = i * recursive(i-1); return sum; }跳出条件调用自身扫雷游戏分析扫雷游戏中的递归算法鼠标点击的位置扫雷游戏111011011? 点击的位置如果周围的地雷总数为0,则周围相邻的地图打开。? 如果周围打开的地图的地雷总数为0,则继续打开此地图周围的地图。? 如果新开的地图,仍有为0的则继续以上的逻辑。主题 Topics 扫雷游戏 对对碰游戏 俄罗斯方块游戏 A*寻路算法对对碰游戏玩法:交换相邻两个宝石的位置,同一直线上,相同颜色的宝石数量大于等于3即可消除。主题 Topics 扫雷游戏 对对碰游戏 俄罗斯方块游戏 A*寻路算法俄罗斯方块游戏玩法:俄罗斯方块游戏可能产生下面七种形状的方块。这些方块有我们的方向键的控制可以产生旋转,左右移动和加速前进等,往下掉,只到遇到下面已经有方块挡住停下来。如果一行完全排列满,则会消掉,如果排列到了顶部,则会失败。俄罗斯方块游戏以 为例,定义旋转的四种状态{1,0,0,0},{1,1,0,0},?{0,1,0,0},?{0,0,0,0}?{0,1,1,0},{1,1,0,0},?{0,0,0,0},?{0,0,0,0}?七种形式,四种旋转状态{0,1,1,0},{1,1,0,0},?{0,0,0,0},?{0,0,0,0}?{1,0,0,0},{1,1,0,0},?{0,1,0,0},?{0,0,0,0}?主题 Topics 扫雷游戏 对对碰游戏 俄罗斯方块游戏 A*寻路算法A*寻路算法假设有人想从A点移动到一墙之隔的B点,如下图,绿色的是起点A,红色是终点B,蓝色方块是中间的墙。搜索区域被我们划分成了方形网格。像这样,简化搜索区域,是寻路的第一步。这一方法把搜索区域简化成了一个二维数组。网格中点被称为“节点”。为什么不把他们描述为方格呢?因为有可能你的路径被分割成其他不是方格的结构。他们完全可以是矩形,六角形,或者其他任意形状。节点能够被放置在形状的任意位置-可以在中心,或者沿着边界,或其他什么地方。我们使用这种系统,无论如何,因为它是最简单的。A*寻路算法正如我们处理上图网格的方法,一旦搜索区域被转化为容易处理的节点,下一步就是去引导一次找到最短路径的搜索。在A*寻路算法中,我们通过从点A开始,检查相邻方格的方式,向外扩展直到找到目标。我们做如下操作开始搜索:? 从点A开始,并且把它作为待处理点存入一个“开启列表”。开启列表就像一张购物清单。尽管现在列表里只有一个元素,但以后就会多起来。你的路径可能会通过它包含的方格,也可能不会。基本上,这是一个待检查方格的列表。? 寻找起点周围所有可到达或者可通过的方格,跳过有墙,水,或其他无法通过地形的方格。也把他们加入开启列表。为所有这些方格保存点A作为“父方格”。? 从开启列表中删除点A,把它加入到一个“关闭列表”,列表中保存所有不需要再次检查的方格。在这一点,你应该形成如图的结构。在图中,暗绿色方格是你起始方格的中心。它被用浅蓝色描边,以表示它被加入到关闭列表中了。所有的相邻格现在都在开启列表中,它们被用浅绿色描边。每个方格都有一个灰色指针反指他们的父方格,也就是开始的方格。A*寻路算法接着,我们选择开启列表中的临近方格,大致重复前面的过程,如下。但是,哪个方格是我们要选择的呢?是那个F值最低的。路径评分公式:F = G + H? G =?从起点A,沿着产生的路径,移动到网格上指定方格的移动耗费。? H =?从网格上那个方格移动到终点B的预估移动耗费。我们的路径是通过反复遍历开启列表并且选择具有
您可能关注的文档
- 餐饮管理第二版蔡万坤餐饮管理第二版课程教学支持资源.ppt
- 饭店管理实务英语郭淑梅课件.ppt
- 非营利组织管理学李维安3章节.ppt
- 非营利组织管理学李维安5章节.ppt
- 非营利组织管理学李维安9章节.ppt
- 风电场电气工程朱永强第二章节风电场电气主系统2章节.ppt
- 风电场电气工程朱永强第二章节风电场电气主系统1章节.ppt
- 风电场电气工程朱永强第六章节风电场的直流输电与功率控制技术.ppt
- 风电场电气工程朱永强第三章节风电场电气二次系统1章节.ppt
- 风电场电气工程朱永强第三章节风电场电气二次系统2章节.ppt
- 山西天一大联考2025-2026学年高二上学期期末学情监测语文试题(试卷+解析).docx
- 山西忻州部分学校2025-2026学年高一上学期2月质量检测数学试题(人教B版)(试卷+解析).docx
- 山西运城市2025-2026学年高二第一学期期末调研测试数学试题(试卷+解析).docx
- 陕西省榆林市榆阳区2025-2026学年八年级上学期期末地理试题(试卷+解析).docx
- 陕西西安市碑林区2025-2026学年度第一学期期末八年级生物试题(试卷+解析).docx
- 四川省广元市苍溪县2025-2026年八年级上学期期末道德与法治试题(试卷+解析).docx
- 江苏泰州市姜堰区2025-2026学年七年级上学期1月期末数学试题(试卷+解析).docx
- 江苏省扬州市邗江区2025-2026学年九年级上学期期末考试化学试题(试卷+解析).docx
- 江西上饶市铅山县2025-2026学年第一学期期末考试八年级数学试题(试卷+解析).docx
- 江苏扬州市高邮市2025-2026学年度第一学期期末学业质量监测试题九年级英语(试卷+解析).docx
原创力文档

文档评论(0)