Scratchで出す音には、スプライトに持つ音と、Scratchに内蔵している音の二つがあります。
(例)スクラッチキャットが持つ音
音タブを選択するとスプライトが持つ音が波形として表示されます。
1)いろいろなイベントを学んできたのでクリックしたら鳴かせてみよう
2)ついでに、イテッ! と言わせてみよう
3)これだけでは面白くないので見た目を変化させてみよう
i)コスチュームの使い方
ビットマップ画像とベクタ画像
・ビットマップ画像は、画像を格子状に切った小さな四角1つ1つに色を塗っていく方式で作成した画像です。
ラスタ画像と言うこともあります。
・ベクタ画像は、座標と式で図形を表す方法で作成した画像です。
例えば、直線を描く場合は、起点(2, 0)の座標から終点(0, 5)の座標まで直線を書くという感じです。
「直線を書く」という部分が式になります。
ベクタは表示するのに計算が必要なので、複雑な画像を表示する場合は、時間がかかります。
しかし、ビットマップは、保存してあるピクセルを表示するだけなので、複雑な画像でも表示が速いことが長所です。
一方、ベクタは、画像を座標と式で表現しているので、拡大しても綺麗に表示されることが長所です。
2)ツールの説明
3)手順
コスチュームの複製
グループ解除
目と口削除
線で目と口を描く
ブロックを追加
次のブロックを完成してみよう
このほか、好きなブロックをくみ上げてみよう。何の曲かな?
一音一音追加していくのは大変
いろいろな曲を演奏するためには音符データを読み込めるようにすると便利
データのダウンロード
スプライトは何でもOK
変数を追加する。(習慣的にi,j,k,l,m,n等を使っていた)
この曲は、すべての音符が同じだったため、音符の読み込みだけで演奏することが出来た。
しかし、ほとんどの曲は音符の長さが混ざっているため、工夫する必要がある。
まず、データのルールを決める。音符と拍数のそれぞれのリストを作り、順番に読み出すこととする。
次に、リスト「音符」とリスト「長さ」を定義する。
そして音符には「Largo音符.txt」を長さには「Largo長さ.txt」を読み込む。
スクリプトには上から順に音符と拍数を読み出し演奏させてゆく。
これで、拍数の違う曲でも演奏することができる。
ここまでは単音で音を出していたが、和音をや複数のパートを演奏するには、複数のスプライトを用意し、
それぞれに音楽データを読み込ませ、同時に音を出すと実現できる。
合奏データ
スプライト1のスクリプト
スプライト2のスクリプト
鍵盤のファイル
白鍵
黒鍵
ドの音のコスチュームを追加する
ドの音のブロックを作る
このスプライトを必要数コピーし、下の表を参照して
それぞれの位置に配置し音階を変更する。
種類 | 名前 | X | Y | 音程 |
白鍵 | C | -144 | 0 | 60 |
D | -96 | 0 | 62 | |
E | -48 | 0 | 64 | |
F | 0 | 0 | 65 | |
G | 48 | 0 | 67 | |
A | 96 | 0 | 69 | |
B | 144 | 0 | 71 | |
黒鍵 | C# | -120 | 37 | 61 |
D# | -72 | 37 | 63 | |
F# | 24 | 37 | 66 | |
G# | 70 | 37 | 68 | |
B♭ | 120 | 37 | 70 |