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

【教学设计】我爱游戏_掌控板8_地下100层

我爱游戏_掌控板_地下100层

一、基本信息

作品名称 我爱游戏_掌控板_地下100层

作者姓名 于飞

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

教材名称 《慧编程》

教材类型 自编教材

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

执教年级 职业高中

课时长度 2课时

涉及器材 掌控板

涉及软件 mPython

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

二、作品内容

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


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

初始时,变量score为0(显示在左上角,主角每通过一个上升的台阶变量score+1,当游戏结束后会显示在第三行);

按下A键,游戏开始,主角空心圆自上边缘向下移动,两个矩形台阶自下边缘向上移动(循环向上移动),如果主角碰到台阶,会跟随台阶一起向上运动,否则一直向下降落。游戏设置了上下左右边界,左右边界,只会限制移动。上下边界如果主角碰触到的话会结束游戏。显示得分。


【教材与学情分析】:本课是《慧编程》的第七节课,这些学生在上一学期已经完成了scratch的基础学习,对于逻辑语句的使用已经没有障碍,但是没有接触过市场上的编程外设,这次课之前学生们已经学习过7次关于掌控板的课程,对于掌控板中相关图形的绘制、坐标系、基础数列和逻辑语句(包括嵌套语句)已经有了一些了解。通过对“地下100层”小游戏的改编,制作了一个可以独立在掌控板上运行的小游戏,不仅让学生熟悉了这款外设,更能提高学生的学习兴趣。

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

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

2.学会通过坐标判断改变图形的位置。

3.学会使用坐标范围判断图形“碰撞”。

【学习重难点】

重点:

1.熟练使用“与”逻辑语句块。

2.掌握图形参数和“碰撞”的关系。

难点:多种图形的碰撞判断,熟练使用图形的参数。

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

【创设情境】

“地下100层”是还没有大屏智能机时代的经典游戏。主角从屏幕上边缘下落,如果碰到向上的运动的台阶,主角会跟随台阶一起向上运动。当游戏开始运行时,左右边缘限制运动,上下边缘进制接触,如果碰到上下边缘游戏结束。期中还有许多功能不同的台阶。上个学期我们使用scratch软件同样制作过该项目,这次我们的软件变为mPython,载体变为掌控板。


使用scratch制作的“地下100层”。


【预设流程】

环节一、新建变量(说明变量)

教师活动:播放demo视频,和学生们互动,让他们说出需要新建的变量。

制作不断向上移动的阶梯,我只做了两个台阶,位置随机0~87,宽为40,上升速度为-1,没有制作更多功能的台阶,这个更多功能的台阶交给学生制作(移动台阶、死亡台阶、反弹台阶、加分台阶),教师只演示制作基础功能的台阶(提示学生“创建新台阶的时候注意图形的区别,不要绘制相同的台阶,无法区分”)。

变量说明:

c主角y轴的增加量,没有接触台阶时c=1,接触到台阶时c=-1;

score分数,当台阶运行到上边缘时,分数+1;

x主角x坐标,控制横向移动(通过A/B键控制);

y主角y坐标,受到c的控制;

zx0台阶1的x坐标,每个循环都有新的随机值;

zx1台阶2的x坐标,每个循环都有新的随机值;

zy0台阶1的y坐标,向上运动,递增-1,当碰到上边缘时会移动到下边缘开始新的循环;

zy1台阶2的y坐标,向上运动,递增-1,当碰到上边缘时会移动到下边缘开始新的循环。


学生活动:观看教师演示,回答问题(说出自己想做什么功能的台阶,具体怎么做),学生带着问题开始新建可能会用到变量(除了基础变量,根据自己的创造新建变量)。

设计意图:通过新建变量的引导,与学生开展互动,学生的想法多了,能力增长也就越快。

环节二、重力加速度公式编辑和调整

教师活动:教师端打开mPython软件,广播屏幕,开始脚本编辑,一边制作,一边讲解,台阶向上运动,递增-1。当台阶的y坐标小于等于-4时,会移动到y=64的位置,随机x位置,重新开始新的上升循环。提示学生,自制的台阶注意循环,不要和基础台阶位置发生重叠。


学生活动:观看教师演示脚本编辑,结束后,自行编辑,如果有其他中类的台阶,自行制作循环逻辑,但是要注意是否会与基础台阶发生为主重叠。

设计意图:教师只制作基础功能,学生的新奇特想法得到施展,更多的思考得到实施的机会和时间。

环节三、图形碰撞条件

教师活动:教师广播屏幕,边界脚本(mPython界面),一边操作编辑,一边对编辑内容进行讲解,如何判断小球和台阶的碰撞,小球如果碰到台阶会跟着台阶一起上升,首先判断主角是否处于台阶的x坐标范围内(额外需要考虑主角的半径和矩形的宽),接着判断两者的y轴范围(额外需要考虑主角的半径)。两个台阶和主角小球的判断可以写在一起,使用“和”逻辑语句块连接,注意长度,不要拖拽错参数变量。

教师在机房的白板上进行示意图绘制,再次讲解。


学生活动:学生观看教师操作演示,接着自己进行脚本编辑,完成后上传烧录,查看运行效果。

环节四、比较脚本

教师活动:将已经边界好的脚本截图发送给学生端。让学生们自行纠错,欢迎自制的新奇特想法跟大家分享。教师机房巡视,及时协助学生修改bug。


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

【拓展探究】

教师活动:新奇特的“台阶”(移动台阶、死亡台阶、反弹台阶、加分台阶)的讨论和具体实施方法。

解决方案:

移动台阶:主角碰到后向左向右水平移动(x轴增量进行修改);

死亡台阶:主角碰到后游戏结束(中断循环);

反弹台阶:主角碰到后y轴向上运动(y-1);

加分台阶:主角碰到后score增加分数;

【交流总结】

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

学生活动:组代表进行展示,一边运行,一边解说游戏。说出个人观点(尤其是那些添加新元素的同学,要说明自己添加的元素是如何制作的)

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

【教学反思】

不足:

游戏的障碍物单一,应该增加障碍物的数量和障碍物的种类,让游戏更具有挑战性。

下降空间不足,可以向右旋转90度,重新开发,这样的话高度是原来的2倍,为更多元素提供了可能。

优点:

复原了“地下100层”小游戏的基本使用功能,小游戏很简单,上手快,可拓展性强,给学生独自开发留下可更多可能。

附件:





点赞

164 次阅读