450本の数式で吉田夜世『オーバーライド』のMVを再現してみた! 絵はグラフ描画ソフトで、音は波形を関数にして作った渾身の力作
今回紹介するのは、ニコニコ動画に投稿された『数式で「オーバーライド」を再現してみた【関数アート】【演奏してみた】』というzboyさんの動画です。
投稿者メッセージ(動画説明文より)
これはグラフを描くための教育用ソフト「desmos」を使って作られています。
本来は数学の学習に用いるツールですが、私はグラフを使って絵や動画を作っています。
数式だけで オーバーライド を再現してみました。
丁寧な解説付き。
さらに今回は音楽の波形を数学的に作成してみました!
数式で「オーバーライド」を再現してみた【関数アート】【演奏してみた】
吉田夜世『オーバーライド』のMVを、投稿者のzboyさんが、グラフを描くためのソフト「desmos」で再現しました。映像だけでなく、音まで関数で表現しています。
再現映像を見ると、重音テトのイラストの表情や動きはほぼ本家と違いがありません。音はファミコン音源のようなアレンジでフルコーラスが再現されています。数式と言われなければ全くわからない、驚愕のクオリティとなっています。
どうやって作っているのか、この動画には詳しい解説があります。まず、使うグラフの種類の説明です。グラフには陽関数のグラフ、陰関数のグラフなど様々ありますが、基本的に媒介変数曲線を使います。
媒介変数曲線にもいろいろな種類があります。ここでは最も簡単に描けるベジェ曲線を使っていきます。
実際にグラフを描くときは、始点と終点を決めたあと、いい感じの曲線になるように中間点を設定して描きます。
複雑な線は、複数のベジェ曲線を連結させます。非常にややこしい数式に見えますが、実際には場合分けをしているだけです。
静止画ができたら、次はモーションです。媒介変数の曲線はただの点の集まりなので、点の移動の公式がそのまま使えます。
上下に動く点Pを用意し、媒介曲線変数にこの座標を足して全体を振動させます。両手やツインドリルは回転運動です。回転量は時間の三角関数で書き、振動させています。
音は「desmos」では限界があるので、波形を関数で直接作りました。440ヘルツの音は周期440分の1秒の三角関数で表せます。ここに符号関数をつけ矩形波に。山が1、谷が3になるよう関数を調整し音色を決めます。
次に音程です。絶対値を使うことで、ある時刻を境に周波数が変化する数式を書くことができます。この操作を音程が変わるたびに行えば、曲を作れます。
休符は、音量をゼロにすることで実現させます。振幅が音量に対応するので、一時的に振幅がゼロになるように数式を調整して休符を作ります。
こうしてできた波形を聴けるようにするために、44100分の1秒ごとに関数の値を取り出して数列にした後、その値を量子化しwavファイルに書き出します。これで完成です。
難しい内容ですが、制作にはとてつもない手間がかけらていることは伝わったのではないでしょうか。期間はおよそ1カ月、使用した数式はおよそ450本、撮影した画像は1562枚にのぼったそうです。大変な力作となっていますので、ぜひ、動画を視聴してみてください。
視聴者コメント
すげぇ
どういうことなの…
めっちゃ完成度高い
これは力作だなあ
あなたどうかしてるよ…
文/高橋ホイコ