友情提示:380元/半年,儿童学编程,就上码丁实验室。
玩过XBOX Kinect体感游戏吗?体感游戏使用3D摄像机/麦克风动态捕捉人的动作和声音,控制游戏中的各种角色。人成为大型遥控器,沉浸在游(bu)戏(neng)场(zi)景(ba)中。Scratch具有初步的视频体感功能(Video Sensing),能够开启摄像头,感知手势的方向和位置,因此能够实现基本的体感游戏功能。
这一次我们尝试使用视频体感功能,实现疯狂切西瓜的游戏。开启摄像头以后,用手势比划就能切西瓜了。效果还是不错的。同事能够复习随机、判断、运动、造型、声音等功能。
适合人群:具有一定的Scratch基础的2年级小孩在家长的指导下,能够完成。视频操作是新指令,这个理解起来会困难一些,不过照猫画虎也就可以了。
游戏主界面,西瓜从下方飞行到上方,然后掉落,如果被切到了,就打开成两半掉落。游戏效果不是那么逼真,但足以说明这些功能了。
下面是制作方法。
第一步: 角色制作:设置三个角色,小猫咪,西瓜和地球。西瓜的制作是关键,不过很简单。
角色1: 小猫咪
小猫咪,其实没啥用。只是小孩为了好玩,将一个小猫咪涂成精灵颜色(更换某一块的颜色即可)。小孩还是喜欢搞怪的,不那么严肃的方式。
游戏开始的时候,小猫咪跑起来,还要说一句话,说游戏即将开始。这个功能和台词,都不是我的本意,是小孩自己添加的。
角色2:西瓜
西瓜是标准角色图片库中现成的,有完整的一个西瓜,还有一半的西瓜。复制半个西瓜,然后左右转向,就实现了一个西瓜打开的样子。为了实现满满打开,所以用了H1,H2,H3三个造型。西瓜被切中以后,更换到造型H1, H2, H3就可以了。
第二步: 游戏开始提示。
小猫咪,有说“切西瓜游戏开始”,3秒。然后隐藏。并且不停的更换造型,实现动画功能,小猫咪就跑起来了。小猫咪是在“射线”的背景下开始游戏的。
这一部分完全是小孩自己加上去的。
第三步: 地球角色-关闭摄像头。(可选步骤)
为了能够主动的关闭摄像头,我们在右下角放了一个地球,让地球转起来。然后如果地球被点击,就将摄像头关闭。因为之前摄像头被打开了,如果不关闭,就一直处于开启状态,知道关闭这个浏览器窗口。
第四步: 西瓜角色-开启摄像头。
开始的时候,就将摄像头打开,可以设置透明度,50%就够了。
小孩发现一个问题,小猫咪说话的时候,摄像头已经开启了。要推迟一点,因此后来在开启摄像头前面等待了几秒。
还有一小段程序是控制背景的,使用了几秒以后切换到树林的背景。其实在西瓜角色中也是可以直接更换背景图片的。
第五步: 开始抛出西瓜,首先要克隆西瓜。
1) 初始化分数,西瓜造型切换为完整的西瓜,即造型1.
2) 西瓜太大,设置为80即可。
3) 然后隐藏第一个西瓜。
4)克隆西瓜。
这些都可以在“家长出任务-小孩完成任务”的引导模式下实现。例如,这个西瓜太大了,变小一点。设置一个总分数,开始的时候清零。开始的时候,西瓜的造型设置为完整的西瓜,为了让第一个西瓜开始的时候不出现在屏幕上,要怎么做。
然后开始克隆,不停的克隆这个西瓜,这是常用功能了。
第五步: 开始抛出西瓜:西瓜克隆体启动时,就飞出来。
实现西瓜飞出来的功能有很多。首选我们要定义一个目标,就是西瓜从哪里飞到哪里。也可以飘西瓜雨,从屏幕上方掉下来。最后我们还是从底部往上飞,然后掉下来。可以改变Y轴大小,通过循环实现。这一次没有使用循环方式,而是使用“滑行”。
滑行的指令真好啊,能够简化移动操作。在1.5秒钟,从某一点,滑行到另外一点。首先从屏幕下方任意一个位置,飞到屏幕上方任意一个位置。因此,这里要使用到随机数,这已经很熟悉了。
西瓜非常去以后,还要掉下来,也使用滑行指令。
等待20秒以后,就要删除这个克隆体西瓜了,否则西瓜越来越多,超过300个以后,就无法继续克隆了。
第六步:切西瓜。
这是重点,不过其实只有一个指令,就是射频侦测。可以侦测方向和动作,然后在角色还是在背景上。这里使用侦测动作,在角色上,大于20。这一个值相当于手势靠近物体的指数,越大,相当于靠得越近,0的话,基本上就是和当前角色无关了。
西瓜被切开,更换造型即可。记得要增加得分。
注意这里使用了一个“与”的操作,只有西瓜的造型等于1,即完整西瓜的时候,才要切,已经被切开的西瓜就别继续切了。
还可以实现,西瓜掉下来以后,就不能切了,那要再加一个AND的操作比较。
第七步: 播放声音。
切中西瓜以后,就播放声音Beat Box,效果还不错。
共享地址:
https://Scratch.mit.edu/projects/219177338/
转自公众号:
艾博特