HeartyLadderで演奏を

HeartyLadderには演奏機能(オルゴール機能)がついています。文章入力エリアに「お」または「か」を一文字だけ入力・確定して、「ゲーム・Win操作」を押すと、「くつがなる」などの曲を、ボタンをリズムよく押すだけで演奏できます。音はピアノの音です。きちんと演奏しようと思うと、意外と難しくて、けっこうハマります。

ただしこれは、手動オルゴールといった感じですので、自分で楽器を演奏するのとは、違います。これはこれでとても楽しいのですが、もう少しいろいろやってみたい人にはちょっと物足りないところもあるでしょう。

ボタン1つでは無理にしても、視線+(ジョイパッド)ボタンなら、自由に演奏することができるのではないか?そう考えて、最初はピアノ風のパネルを作ってみました。

見た目はなかなかいいのですが(視線で使うと赤枠、青枠が表示されませんので、ちゃんと鍵盤風になります)、HeartyLadderのパネルの制約(すべてのコマは同サイズの四角形でなくてはならない)があって、黒鍵を使うためには、ひとつの鍵盤をいくつかに分けざるを得ず(上の図では黒鍵が2分割、白鍵は4~5分割しています)、視線での操作はけっこう難しくなってしまいました(上図赤枠が1コマ分です)。視線入力が得意な方なら、なんとか使えるかもしれませんが、そうでない方にはかなり使いづらそうです。

それで、もっと使いやすいものを、ということで、木琴風のパネルを作ってみました。これだと、1コマが大きくなりますので、たいていの人が視線+1ボタンで操作できると思います。パネルはエクセルなどでつくり、画像処理ソフトに貼り付けてbmpファイルとして保存します。

これを動かすためのtblファイルの中身は、

木琴.bmp
120,500,15,1
いttうttえttおttかttきttくttけttこttさttしttすttせttそttたtt

と、わずかこれだけです。

音はどうするか?HeartyLadderにはもともと、入力した文字を読み上げる機能があります。「環境設定」プログラムの「その他」のところで「入力した文字を読む」にチェックを入れておけばOK。「あ」を押すと「あ」、「い」を押すと「い」と読み上げてくれます。では、その読み上げる音声はどこにどんな形で入っているかというと、

c:\HeartyLadder\システム\TypingVoice

です。ここをひらくと、「あ」「い」「う」「え」「お」・・・と読み上げ用の音声がwavファイルの形で保存されていることがわかります。もし、この「あ(.wav)」に、「あ」という音でなく、たとえば、楽器の「ファ」の音が登録されていたらどうなるでしょうか?HeartyLadderで「あ」と打ち込むと、楽器の「ファ」の音が鳴りますよね?これで、HeartyLadderを楽器にするための仕組みはできました。あとは、楽器の音をどうやって調達するか、です。

本来なら自分で調達してくるべきですが、ちょっとズルをさせてもらいます。最初に書いたオルゴール機能では、ピアノの音が鳴るのでした。これを拝借すれば、話は簡単(著作権問題があるので、あくまでも個人的に楽しむだけにしてくださいね)。この音は、

c:\HeartyLadder\システム\pianodata

に入っています。先ほどの「あ」「い」「う」「え」「お」と同じくwavファイルで、ファイル名は低い方から、半音階で、md50、md51・・・となっています。これをコピーして、たとえばmd53(「ファ」の音です)を「あ」、md60(「ド」の音です)を「お」という名前に置き換えて、TypingVoiceを新たに作れば(といっても完全なパクリですが)、「あ」と入力すると「ファ」、「お」と入力すると「ド」が鳴るという風にできるのです。もとのTypingVoiceは本来の用途のために残さないといけませんから、これはTypingVoice_originalとでもリネームして保存しておいてください。

さて、これで、木琴風の鍵盤でピアノの音を出せる楽器が完成です。半音も出せるようにすると、操作が複雑になりますので、まずは半音無しで作って練習するといいでしょう。素早いパッセージを弾くことは原理的に難しいですし、視線を入力に利用するので、楽譜を見ながら演奏する、ということもできませんので、複雑な曲の演奏はむずかしいと思います。童謡なんかがぴったりです。

オルゴール式の演奏も楽しいですが、自由に曲を弾けるこちらも、とても楽しいです。ぜひ試してみてください。

※木琴機能を使う際、「環境設定」で設定を変更しておく方がいい箇所があります。

1.入力の「モード」は視線モード(「モード切替」の中で設定)。

2.「その他」で、□入力した文字を読む、にチェックを入れる。

3.「表示」で、□確定入力にチェックを入れる(これをやっておかないと、未確定文字列が長くなって、入力が[=演奏が]できなくなる)。

4.おなじく「表示」で、文字サイズを、文章入力エリア9,候補エリア0。「50音下部スペース」は200くらいにする。

5.キーリピートがかかると、音を伸ばしている途中で再度その音が鳴ってしまうので、「モード切替」で「リピート開始時間」を十分大きく(たとえば、100)とっておく。

6.「HeartyAi環境設定」の「基本設定」で、「視点の決定方法」は「ジョイパッド」を選ぶ。

 

2018年6月20日

Posted by ist