|
scratch如何模拟弹钢琴3 r; F/ A4 y# A: y: Y5 D
! z" P- g0 f- @4 b核心提示:大多数孩子学编程都会选择从Scratch入门,一方面是Scratch的界面十分有趣,能够吸引孩子关注,另一方面Scratch的功能也非常丰富,游戏、动画齐全,孩子上手会更容易。下面就来说说怎样用scratch模拟弹钢琴吧! 怎样用scra, B2 W& K$ x5 x9 l0 J1 o) L# O
大多数孩子学编程都会选择从Scratch入门,一方面是Scratch的界面十分有趣,能够吸引孩子关注,另一方面Scratch的功能也非常丰富,游戏、动画齐全,孩子上手会更容易。下面就来说说怎样用scratch模拟弹钢琴吧!
' w5 o! M; ~" ]+ s3 V) T% U# m, W$ S- e& j6 J( [3 O7 b& I3 `: \5 ]5 o
怎样用scratch模拟弹钢琴9 i! s$ ]2 _2 B& z: a; C2 s
( ^# u% _8 [' {: b
1 p6 M5 X& Y# K- }- G; ^. ^ A5 u
第一步、新建角色和背景
F3 w( U7 n7 w6 l$ ^( }/ H* j( @5 ^) a9 r. E/ N, n q
进入Scratch的角色库,点击“物品”,然后下拉,选取钢琴作为角色,名字是piano。接着,点击舞台区域里的“新建背景”按钮,选择“主题”下面的“音乐和舞蹈”,选取"Stage1"作为我们的背景。
3 ^( w/ b; J1 }4 P8 C: |7 n/ S4 A$ U6 B& P: e/ N, q
第二步、播放声音
$ e7 T; C/ p B- ?/ F' m( n+ W0 x1 I" Y. O; E3 j
点击“角色”钢琴,再点击“脚本”右边的“声音”按钮,是不是可以看到有好多声音效果? - G, B' n0 u/ I/ W _
/ @/ W* D/ b! w( _, f5 u
为了让键盘和钢琴之间有联系,你需要‘脚本’里的‘事件’按钮里的指令。把‘当按下空格键’这个积木块拖到代码区域,然后把‘声音’里的‘播放声音’这个积木块放到它下面。为了实习按“1”播放“哆”的效果,我们把长方形里的空格键改成1,声音选择“C piano”。
5 ^! g& [6 C7 g X
* S( k, P/ x9 M# f8 P: O同理,我们可以实现其它几个按键的播放声音效果,只需要右键点击代码,选择复制就可以啦,把复制代码里的1改成2,C piano改成D piano。 6 H& I4 x. M, l9 f! r0 G; j: a' z
* I7 {! Y' Q& V. I# J4 S+ |% `尝试地按1到8之间的数字键看看效果,是不是很简单?
* U9 w9 {4 L* ^) t$ c5 H/ G2 [9 ^5 z8 c5 X
第三步、让钢琴动起来 * {- a/ x# \+ M7 \% v! r# a
9 W( {# N9 O) r/ D+ E) p声音已经出来了,但问题是钢琴没什么动静,如何让钢琴也有反应呢?
( y g! e$ ^9 `% I7 S& A7 \3 r
1 s# B8 g0 P& _& p* |这也不难,你只需要点击钢琴,把外观里的‘将颜色特效设定为0’这个积木块拖到‘播放声音’块的后面,再改改里面的数字就可以啦。
# K. s% c& ]6 `* T; [4 K! |
; ^) l6 ~4 `; C* R" z) Z第四步、实现钢琴键盘的效果 % C& Z/ h0 p9 j$ p& E
& T8 F" W! q- A" w$ q( |6 u3 y为了有一种弹钢琴的感觉,我们新建一个“键盘”角色(点击‘新建角色’,选择‘物品’,再选择里面的‘Piano-Electric’),然后把钢琴的代码复制给键盘。
& [6 }! b5 d& a0 M$ V E
3 Y+ n) T9 R, L/ ]以此类推,把代码全部复制过来,再去掉所有的“将颜色特效设定为”的代码块。 4 f* ]5 R& x' }3 d- A
& I" ~& M9 {7 o" B! P2 y# {4 C( q
因为我们要按钢琴键盘的效果,而键盘是有其它造型的。所以把‘外观’按钮里的‘下一个造型’积木块放到所有‘播放声音的代码下面,这样我们在按数字的时候,键盘就会变换造型,让你觉得你在弹钢琴。
! l8 Y9 u3 z. T6 f+ }2 M, c4 b$ A' ^! Y' B$ h
然后我们点击1到8之间的数字,就可以让钢琴变色,并且键盘也有特效。 7 w8 z' e, G# t0 G
) t: X% S- V. o8 W
- j0 ]4 J+ M$ Q
2 S2 c, i) ]/ j9 d; ?如何用scratch编写钢琴演奏程序
" _! K, w- w8 Q: D* m: f. {3 g$ i
目的:编写一个简易的钢琴演奏程序,了解Scratch对声音的处理(播放声音、弹奏鼓声、弹奏音符,控制节拍,选择乐器,控制音量等)。
5 ~! n, K+ g: }- [& _! ]) f7 }. N5 N+ n; x. J
适用对象:适合有一定编程和数学基础的用户,例如一二年级学生。在家长指引下小完成多数练习,用时约2小时。
0 H1 m. B3 `' s/ B3 }: t) n# U# U# x r: I+ X! F
实现方式:尽量使用简单的语句和方法,实现一个简易的钢琴。首先自己制作一个钢琴白色按键,有两个造型,只是颜色有点区别。按下按键的时候,切换造型,显示按下的效果。实现从1,2,3,4,5,6,7,i八个音节,因此复制角色即可。方法相同,制作5个黑色按钮角色。(为了简单,并未使用克隆功能,因此代码是重复的。这种方式适合入门的用户。)
% k6 D: \& g9 j! K/ b% A& {& b- m. F" K4 W' ?* ?
一、钢琴白键:造型、按键和播放声音
, H7 z' D( ~8 ^ n: G
" Y- _3 {- z2 ~$ T& a1)自己制作一个角色,用填充白色的长方形即可。制作完毕以后,复制这个造型,修改填充颜色。白键的两个造型即完成。
! f: V1 ]& _1 o+ L" Y
; F% \- ^8 \1 X5 Q6 r! \2)添加按键、播放音节的脚本:开始时切换造型到1(即白色)。重复执行,判断按键A被按下,则切换造型2(浅蓝色),然后“弹奏音符60 0.5节拍”,如果没有A被按下,则切换回造型1(白键)。 4 r1 M$ z. h) @& n9 t. x
$ [4 [9 V& `0 d/ r$ B3)其他按键类似,只是弹奏的音符不同,1,2,3,4,5,6,7,i八个音符的数字依次为:60,62,64,65,67,69,71,72.
6 i4 _: v4 t6 e+ `
* O- J& R. [6 |; ?4)为了使按键间隔一致,初始化时移动到X Y,Y为0,X从-180开始,每个按键增增加50。为了简单,这里并未使用变量。级别高的用户可以使用变量,以便在整体往右移动按键的时候会简单些。 4 @; w j& s3 {
* X( D1 M' I. J; g5 V W* [二、钢琴黑键:造型、按键和播放声音 L; b5 d% |9 W" p, w7 h' h/ K/ N3 [: H
( H, `7 b$ [; B" e
1)使用相同的方法制作黑键。两个造型,高度稍短。位置和钢琴上的黑键相同,即3,4之间没有黑键。
& l, Y% C' V" B3 [. M' c0 Z6 I& f( Z& q2 |3 O3 L; h
中高级用户可以实现这些改进功能:
2 s2 N) U5 n! ~ V
+ T% N1 o0 E. A3 k0 o# N! f7 `6 K1) 使用变量统一控制钢琴按键在屏幕中的相对位置。 ; v8 Z; i! W/ _" H
1 }4 c2 M8 F N& Y+ u
2) 使用克隆,减少角色数量,使用一个白色角色、黑色角色,通过克隆,即可实现所有按键。(代码虽有所减少,但单个角色中的代码会增加,程序会复杂一些)
# |; ?7 c- q/ z
; S& @9 [0 n( H3) 考虑按键时长:这种循环中,直接判断某个按键是否被按下,存在严重的缺陷。即用户如果连续按着按键,系统会再次播放这个音节。相当于每次都是固定的0.5拍,不会随着按键快慢而变换节奏。
; X7 K8 N& d3 r7 L4 q3 p6 ~8 f1 ]" l7 G
使用scratch制作一个钢琴的步骤
% b9 P3 k5 s+ k! @' f8 K, {
) @, j( a3 b7 i+ j打开软件,选择事件选项。
/ T* C, l4 C3 x9 q4 |, K$ j; o& y/ Y1 L. O) U( z: _5 {
选择事件下方的当按下空格键。拖到编程区域。 5 x% B- x/ ~5 K) u9 S2 h
8 t- K- u/ l# i5 Y0 b$ {点击空格键右边的倒三角。 % }* H5 ?& N; p6 H W# U% ~1 s+ Z' ?( Y
^9 ?8 z- V- A6 E4 ^ {( q7 V
下拉菜单选择数字1。
, o5 U; u2 d- ?5 p& b0 a( z8 O ~; \" Y0 X$ p
找到声音中的弹奏音符选项。
) |4 Q* t4 }* Q+ _$ E6 Q5 D; e' u! g7 Q g* R4 f+ w
按下音符60后面的倒三角。选择中央C点击。
: l8 S( V' G( x2 r! V0 m. \0 x+ K" }2 x# w( C. T! r) K: m2 ^
同理,分别设置2,3,4,5,6,7按钮控制音符。 7 k. L9 x6 V- F9 z# j+ j
: W2 X) M- e. B6 W设置完成之后就可以按住按钮弹奏音乐了! |
|