みなさん、ゲームはやられたことはあるでしょうか
ゲームにはほとんど音楽が使われています
しかし、これらのゲームとかはループサウンドを
組み合わせてうまく構築されているのです
しかし、それでは非常に機械的です
私の場合も、確かにMML言語レベルでA+B=AB になるようにしています
ループを繰り返していけばA+B+C=ABCになるかもしれないようになっているかもしれませんが
私の高品質ピアノ音源は異なります
A+B=はZYであり、A+B+C=ZYXになるのです
それはなぜでしょうか?
人間味の表現力
ランダム関数においてこれらの人間味の表現力を実現しているのですが
例えば、かえるの歌をMMLにしてみるとわかりやすいのかもしれません
ドーレーミーファーミーレード
普通に書けば、c4d4e4f4e4d4c4
になりますが
私がランダム関数を経由してMMLを出力させると
v125q92r1536c4r-153 v123q91r183d4r-183 v124q92r273e4r-273 v125q90r180f4r-180
手書きで書いているので、とてもつらく「どれみふぁ」までしか書けていませんが
このように自動付与されているのです
ランダム関数の呼び出しタイミングによっては
v124q91r1926c4r-192 v125q92r147d4r-147 v123q91r201e4r-201 v124q91r137f4r-r137
のようにほとんどの確率で違う値(文字列)を出すのです
おっと、忘れましたが
c4 d4 e4 f4 はそれぞれ4分音符で音を鳴らすだけですが
v は ベロシティー(音量相当)
q は音長
r は 休符(マイナス値指定で、時間をもどす)
都のような感じです
このようにして、人間味のある演奏を、MMLだけで実現しているのです
曲をループさせていますが、
ただ、A+B=しているわけではないので
同じループ済作品であれば
ループ回数ごとによって、ごくわずかな違いも感じられるわけです