关注
28
粉丝
27
帖子
大于
04月27日

【教学设计】我爱游戏_掌控板11_重力足球

我爱游戏_掌控板_重力足球

一、基本信息

作品名称 我爱游戏_掌控板_重力足球

作者姓名 于飞

作者单位 嘉善信息技术工程学校

教材名称 《慧编程》

教材类型 自编教材

教材简介 自编校本教材,作为学生自由选修课使用,丰富学生课程生活,打造“四力融合,课程改革”,符合其中创造力的学习。

执教年级 职业高中

课时长度 2课时

涉及器材 掌控板

涉及软件 mPython

文件清单 教学设计、配套视频、配套代码

二、作品内容

【硬件搭建】所需材料掌控板和数据线,用数据线将掌控板和电脑连接,选择已经连接COM接口,点击连接成功。


【作品功能】点击“运行”将程序上传到掌控版。

左边是我们操作的足球(y<-10时,开始向右移动),x轴(俯仰角),大于±10时,足球向上向下运动。

右侧为3个做上下往复运动的球员(前锋,中锋,后卫)和球门,球门不动,球员为上下往复运动,如果开始游戏后防守的3名球员碰到足球,那么进攻失败。如果玩家控制足球可以绕过3名防守球员,正面碰到(或是曲线碰到)球门,那么完成进球,游戏结束。


【教材与学情分析】:本课是《慧编程》的第十一节课,这些学生在上一学期已经完成了scratch的基础学习,对于逻辑语句的使用已经没有障碍,但是没有接触过市场上的编程外设,这次课之前学生们已经学习过10次关于掌控板的课程,对于图形绘制、坐标系、基础数列和逻辑语句(包括嵌套语句)已经有了一些了解。这次的课主要是对“坐标距离判断”进行一次学习(使用勾股定理判断“点到圆心的距离”),添加“体感控制”增强互动性。

本课授课对象是中职一年级编程兴趣班学生,学生人数40人以上。中职类学生相对普高来说数学和英语的基础素质较差,所以选用这样一款图形化编程软件,上学期有过scratch的基础,搭配掌控板可以实体操作,相信这些学生可以通过自己的操作,真正的做出一款小游戏,重拾自信。

【学习目标】:1.熟练掌握mPython和掌控板的使用。

2.精通掌控板的坐标系。

3.熟练掌握绘制图形的碰撞判断。

4.学会使用自定义函数。

【学习重难点】

重点:1.精通掌控板的坐标系。

2.通过绘制图形的参数判断图形是否发生碰撞。

难点:多障碍图形的碰撞关系判断。复习使用“勾股定理”判断两个图形的关系。

【教学资源】:学生机房、电脑一人一机、掌控板六人一块、 学生机与教师机局域互联并安装mPython软件;成品体验。

【操作说明】

左边的实心圆为主角,右边的三个空心圆为敌方球员,上下做往复运动,右边缘空心矩形为球门,如果主角穿过三个球员的阻挡冲入球门,我方获胜游戏结束,如果在进攻过程中碰到敌方球员游戏结束。

关于操控:整个过程受到y轴和x轴倾斜角控制,向右倾斜角度大于10度就进攻,否则就停下;俯仰角大于±10度就会向上下运动。

【预设流程】

环节一、绘制主角、敌人、球门

教师活动:播放demo视频,往复运动只需要改变累加值c即可(自己新建变量,怎么建都行)。由于敌方队员只设计了三个不是很多,所以没有使用列表来存储变量。

变量by,敌方队员的后卫y坐标;

变量b1y,敌方队员的中锋y坐标;

变量b2y,敌方队员的前锋y坐标;

变量c,敌方队员后卫y坐标的增量,在±1两个值转换;

变量c1,敌方队员中锋y坐标的增量,在±1两个值转换;

变量c2,敌方队员前锋y坐标的增量,在±1两个值转换;

变量x,主角的x坐标,受到y倾斜角的控制(侧倾角);

变量y,主角的y坐标,受到x倾斜角的控制(俯仰角)。

仅演示一名敌方队员的脚本,其余脚本让学生自行补齐。


学生活动:观看教师演示,教师演示结束后编辑脚本,教师仅制作了敌方的后卫,学生自行补齐中锋和前锋两名队员的绘制和参数。

运行效果:


完整队员脚本,X=90/70/50三个障碍物


环节二、足球角色的体感控制脚本

教师活动:教师先给大家再次演示项目,并交给学生体验,解释说明主角的控制方式。广播屏幕编辑脚本。

启动:y轴倾斜角<-10,启动状态,向右移动x+1;

上下移动x轴倾斜角>10,y+1;x轴倾斜角<10,y-1

注意边界(上下,3和60),不然会出界结束游戏。


学生活动:观看教师演示脚本编辑,待教师广播结束后,自行编辑,上传运行,主要测试“体感功能”的使用。

环节三、勾股定理判断敌方三名防守球员与主角的关系(距离)

教师活动:教师广播屏幕,编辑脚本(mPython界面),一边操作编辑,一边对编辑内容进行讲解,使用勾股定理来判定球与障碍物之间的距离(双方都是半径为3的圆形),由于只有三个点所以没有使用列表,当需要被判定的点很多时可以使用列表遍历元素来判断两者之间的关系。

(勾股定理:a平方=b平方+c平方)

距离小于等于半径*2,判定为碰撞发生游戏结束;

距离大于半径*2,判定为碰撞未发生游戏继续,直到主角冲出边界或进球门。


学生活动:学生观看教师操作演示,接着自己进行脚本编辑,完成后上传烧录,查看运行效果,移动到防守队员位置的等待碰撞发生,从而判断脚本是否有问题。


环节四、是否进球脚本

教师活动:教师广播屏幕,编辑脚本(mPython界面),一边操作编辑,一边对编辑内容进行讲解,判定足球角色是否进门,只需要对比主角y坐标和球门矩形的y坐标即可。

当y>108时,如果x在16到46之间,那么显示“恭喜你进球啦!”,亮绿灯,游戏结束;

当y>108时,如果x在16到46之间,那么亮红灯,游戏结束


学生活动:学生观看教师操作演示,接着自己进行脚本编辑,完成后上传烧录,查看运行效果,为了方便判断,可以先移除对方球员三个角色的判断脚本,这样直接控制主角移动到球门即可判断脚本是否正确。

环节四、比较脚本

教师活动:将已经边界好的脚本截图发送给学生端。让学生们自行纠错,关于位置和得分的判断学生与教师不同的教师需要查看,如果有问题及时纠错指导。教师机房巡视,及时协助学生修改bug。


学生活动:上传修复好的脚本,如遇问题举手示意教师协助解决,待完成后,运行流畅的同学可以分享自己的作品。


【拓展探究】

教师活动:掌控板支持的推展设备还有很多,是不是可以添加遥杆控制方向,按键控制射门呢?

解决方案:购买外设,添加“通用传感器”模块,通过引脚控制角色。

【交流总结】

教师活动:请每一组出一个代表,展示并说明自己的作品。

学生活动:组代表进行展示,一边运行,一边解说游戏。说出跟人观点(哪些地方需要改进,通过学习,提出程序的具体改进方法)

设计意图:小组之间互相对比,各有不同,相互学习。通过每隔代表的介绍,可以判断学生的掌握情况,梳理了整节课的知识重点,改进方向的提出,放手让学生去做,增强互动性,让更多学生做出不一样的程序。

【教学反思】

不足:

“防守球员”运动路径单一,进球容易游戏性不足。

优点:

自己制作的小程序可以脱离电脑独立运行;

勾股定理再被用来判断图形关系,让学生在游戏制作过程中也能复习数学知识,并应用到功能中。使用倾斜角体感控制,增强游戏互动性。

附件:





1

点赞

125 次阅读1 人赞