次のコードを見てください。
play 70
ここからすべてが始まります。アプリケーションの上部のコードウィンドウ(Run
ボタンの下の大きな空白)にコピーして貼り付けます。そして、Run
ボタンを押してみましょう。
ビックリした? もう1回、押してみましょう。そしてもう1回…
わお! すごい! 一日中楽しんで居られそうだけど、でも待って。ビープ音の無限の流れに夢中になる前に、数値を変えてみましょう。
play 75
違いが分かりますか? より低い値も試してみましょう。
play 60
したがって、数値が小さいほどビープ音のピッチが低くなり、数値が大きいほどビープ音のピッチが高くなります。 ピアノと同じように、ピアノの下部(左側)のキーは低い音を演奏し、ピアノの上部(右側)のキーは高い音を演奏します。
ド(英語圏でのCの第4オクターブ)は数値60で表せます。よって、play 60
はドを再生します。ピアノの次の音を奏でるには、数値60に1を足してplay 61
と入力する、この場合はピアノの黒鍵、ド#が再生されます。レを再生するにはこの次の鍵盤の数値である、play 62
で再生することができます。
もし、これがあなたにとって何の意味か分からなくても心配しないでください。私も始めた時は同じでした。いま重要なことは、小さい数値は低い音を、大きい数値は高い音を生み出す、ということを知っておくことです。
音符を奏でることはとても楽しいですが、同時にたくさんの音符を鳴らすとさらに楽しくなります。これを試してみましょう。
play 72
play 75
play 79
華やかです! 複数のplay
を書くと、全て同時に演奏されます。自分で試してみましょう。どの数値がいい組み合わせでしょうか? どれがひどい音? 実験、探求しながら、自分自身で見つけていきましょう。
音符と和音を演奏するのは楽しいですね。でも、メロディーの演奏はどうすればよいでしょうか?一音ずつ、同時ではなく演奏したい場合は? それは簡単です。音符の間にsleep
を入れば可能です。
play 72
sleep 1
play 75
sleep 1
play 79
なんて素敵なアルペジオ(和音を続けて弾くこと)! では、sleep 1
の1
は何を意味するのでしょうか? これは1拍休む、という意味ですが、とりあえず今は、1秒休む、と考えましょう。では、アルペジオをもう少し早くしたいと思ったら? それは、短い値を使えばよいのです。例えば半分の値0.5
ではどうでしょう?
play 72
sleep 0.5
play 75
sleep 0.5
play 79
早くなりましたね。では、自分で時間を変えてみましょう。違う時間と音符を使ってみましょう。
たとえばplay 52.3
やplay 52.63
のような中間的な値でも演奏してみてください。通常の音符にこだわる必要は全くありません。遊んで、楽しんでみてください。
みなさんの中で、すでにいくつかの音楽記号を知っている人は、たとえばCとかF#などの音名を使ってメロディーを書きたいかも知れません(もし知らなくても心配無用です。それが必要というわけではありません)。Sonic Piはそれをカバーしてくれます。以下のことをやってみましょう。
play :C
sleep 0.5
play :D
sleep 0.5
play :E
演奏する音階の前にコロン’:’を入れることを忘れないでください。コロンを置くと、Cが:C
のように色が変わります。また、音名のあとに数値を追加してオクターヴを指定することもできます。
play :C3
sleep 0.5
play :D3
sleep 0.5
play :E4
半音♯(シャープ)にしたい場合は、’play :Fs3’のように音名の後に’s’を追加します。半音♭(フラット)にしたい場合は、’play :Eb3’のように’b’を追加します。
There’s also a handy shortcut for a rest (a musical way of saying not to play anything instead of a note) using :r
, :rest
or nil
.
夢中になって、自分の曲を作って楽しみましょう。