玩過XBOX Kinect體感游戲嗎?體感游戲使用3D攝像頭、麥克風(fēng)動(dòng)態(tài)捕捉人的動(dòng)作和聲音,控制游戲中的各種角色。其實(shí),Scratch也具有初步的視頻體感功能(Video Sensing),能夠開啟攝像頭,感知手勢(shì)的方向和位置,因此能夠?qū)崿F(xiàn)基本的體感游戲功能。
我們嘗試使用視頻體感功能,實(shí)現(xiàn)瘋狂切西瓜的游戲。開啟攝像頭以后,用手勢(shì)比劃就能切西瓜了。效果還是不錯(cuò)的。同時(shí)能夠復(fù)習(xí)隨機(jī)、判斷、運(yùn)動(dòng)、造型、聲音等功能。
適合人群:具有一定的Scratch基礎(chǔ)的二年級(jí)小孩在家長的指導(dǎo)下,能夠完成。視頻操作是新指令,這個(gè)理解起來會(huì)困難一些,不過照貓畫虎也就可以了。游戲主界面,西瓜從下方飛行到上方,然后掉落,如果被切到了,就打開成兩半掉落。游戲效果不是那么逼真,但足以說明這些功能了,下面是制作方法。
第一步: 角色制作。設(shè)置三個(gè)角色,小貓咪、西瓜和地球。西瓜的制作是關(guān)鍵,不過很簡(jiǎn)單。
角色1為小貓咪,將一個(gè)小貓咪涂成精靈顏色(更換某一塊的顏色即可,圖1),小孩喜歡搞怪的,不那么嚴(yán)肅的方式。游戲開始的時(shí)候,小貓咪跑起來,還要說一句話,說游戲即將開始。這個(gè)功能和臺(tái)詞,都不是我的本意,是小孩自己添加的。
角色2為西瓜(圖2),西瓜是標(biāo)準(zhǔn)角色圖片庫中現(xiàn)成的,有完整的一個(gè)西瓜,還有一半的西瓜。復(fù)制半個(gè)西瓜,然后左右轉(zhuǎn)向,就實(shí)現(xiàn)了一個(gè)西瓜打開的樣子。為了實(shí)現(xiàn)滿滿打開,所以用了H1、H2、H3三個(gè)造型。西瓜被切中以后,更換到造型H1、H2、 H3就可以了。
第二步: 游戲開始提示。
小貓咪,有說“切西瓜游戲開始”,3秒。然后隱藏。并且不停地更換造型,實(shí)現(xiàn)動(dòng)畫功能,小貓咪就跑起來了。小貓咪是在“射線”的背景下開始游戲的。這一部分完全是小孩自己加上去的。
第三步: 地球角色——關(guān)閉攝像頭(圖3)。為了能夠主動(dòng)地關(guān)閉攝像頭,我們?cè)谟蚁陆欠帕艘粋€(gè)地球,讓地球轉(zhuǎn)起來。然后如果地球被點(diǎn)擊,就將攝像頭關(guān)閉。因?yàn)橹皵z像頭被打開了,如果不關(guān)閉,就一直處于開啟狀態(tài),直到關(guān)閉這個(gè)瀏覽器窗口。
第四步: 西瓜角色——開啟攝像頭。開始的時(shí)候,就將攝像頭打開,可以設(shè)置透明度,50%就夠了。小孩發(fā)現(xiàn)一個(gè)問題,小貓咪說話的時(shí)候,攝像頭已經(jīng)開啟了。要推遲一點(diǎn),因此后來在開啟攝像頭前面等待了幾秒。
還有一小段程序是控制背景的,使用了幾秒以后切換到樹林的背景。其實(shí)在西瓜角色中也是可以直接更換背景圖片的。
第五步: 開始拋出西瓜,首先要克隆西瓜(圖4)。
1) 初始化分?jǐn)?shù),西瓜造型切換為完整的西瓜,即造型1。
2) 西瓜太大,設(shè)置為80即可。
3) 然后隱藏第一個(gè)西瓜。
4)克隆西瓜。
這些都可以在“家長出任務(wù)-小孩完成任務(wù)”的引導(dǎo)模式下實(shí)現(xiàn)。例如,這個(gè)西瓜太大了,變小一點(diǎn)。設(shè)置一個(gè)總分?jǐn)?shù),開始的時(shí)候清零。 然后開始克隆,不停地克隆這個(gè)西瓜,這是常用功能了。
第六步: 開始拋出西瓜。西瓜克隆體啟動(dòng)時(shí),就飛出來。實(shí)現(xiàn)西瓜飛出來的功能有很多。首先我們要定義一個(gè)目標(biāo),就是西瓜從哪里飛到哪里。也可以飄西瓜雨,從屏幕上方掉下來。最后我們還是從底部往上飛,然后掉下來??梢愿淖僘軸大小,通過循環(huán)實(shí)現(xiàn)。這一次沒有使用循環(huán)方式,而是使用“滑行”。
滑行的指令真好啊,能夠簡(jiǎn)化移動(dòng)操作(圖5)。在1.5秒鐘,從某一點(diǎn)滑行到另外一點(diǎn)。首先從屏幕下方任意一個(gè)位置,飛到屏幕上方任意一個(gè)位置。因此,這里要使用到隨機(jī)數(shù),這已經(jīng)很熟悉了。西瓜飛上去以后,還要掉下來,也使用滑行指令。
等待20秒以后,就要?jiǎng)h除這個(gè)克隆體西瓜了,否則西瓜越來越多,超過300個(gè)以后,就無法繼續(xù)克隆了。
第七步:切西瓜(圖6)。這是重點(diǎn),不過其實(shí)只有一個(gè)指令,就是射頻偵測(cè)。這里使用偵測(cè)動(dòng)作,在角色上,大于20。這一個(gè)值相當(dāng)于手勢(shì)靠近物體的指數(shù),越大,就靠得越近,0的話,基本上就是和當(dāng)前角色無關(guān)了。
西瓜被切開,更換造型即可。記得要增加得分。注意這里使用了一個(gè)“與”的操作,只有西瓜的造型等于1,即完整西瓜的時(shí)候,才要切,已經(jīng)被切開的西瓜就別繼續(xù)切了。還可以實(shí)現(xiàn),西瓜掉下來以后,就不能切了,那要再加一個(gè)AND的操作比較。
第八步: 播放聲音(圖7)。切中西瓜以后,就播放聲音Beat Box,效果還不錯(cuò)。