よー、分からん
GoogleAdwordsへ広告を出稿しているとコンバージョン数(=インストール数)が逐一チェックできるのですが、そのコンバージョン数とGoogleConsoleで確認できるインストールユーザ数に300以上の開きがあって、インストールユーザ数は未だ500に達していないのですが、その一方、GooglePlayで「Cutie Circuit」を確認してみると「500回以上のダウンロード」と書かれていたりして、何が正しのかもうサッパリ。
まぁ、DL数が500前後で一喜一憂しているようでは開発者としてダメダメなんでしょうが・・・
そんなこんなでKoreographer
定期的にブログを更新していても特にコメントとかリアクションとかを頂いたことがないので、需要があるのかないのか分からないのですが、今回も「Koreographer」のお話。
「Koreographer」とは音楽に同期してイベントを発行してくれるアセットのことで、音ゲーとか音楽に合わせてオブジェクトを動かしたい場合などには有用なアセットです。
が、まぁまぁなお値段がします。(Lite版で$36.0、Professional版だと$116.0(どちらも税抜額))
私は夏の猛暑に頭をやられたのか金欠なのにProfessional版を購入してしまったので、今回はProfessional版だけで出来ることを自慢半分に書いていきたいと思います。
RMS解析とFFT解析が使えるよ
Professional版では楽曲の波形に対してRMS解析とFFT解析を行うことができます。
それぞれの説明は面倒くさいので省くとして、この解析を使って何ができるのかというと、楽曲データの音の強弱等を線形データ化することができます。
実際に楽曲データをRMS解析した結果がこちら
中央の緑のウネウネした線がRMS解析で作成したデータになります。
で、これを使うと例えばステレオのグラフィックイコライザーみたいに楽曲の強弱に沿って表示が変化するものが作れます。
今回は前回使用したCUBEに対してグラディエントカラーが変化するものを作ります。
まずはグラディエントカラーを用意して
KoregrapherからSpanイベントを毎フレーム発行してもらい、線形データの値を取得するようにします。
(Spanイベントとは何か?は前回の記事を参照してください)
後はその値から色を決定して、マテリアルのcolorへ設定
ソースコードはこんな感じ
動かしてみよう
データに併せて色を変化させるだけだと余りに地味だったので、ブレイクの箇所で色が順次変更される処理を実行しています。
ちなみに楽曲はglitchさん作曲のDance With Powderを使用しています。
dova-s.jp
今回は色の変更だけでしたが、解析データを利用してオブジェクトの大きさを変えたり、AddForce等で動かしたりすると、音に併せたオブジェクトの動作を実現することができます。まぁ、アイデア次第ですね。
前回と今回で「Koreographer」の基本的な動作は学習できたので、次回はちょっと応用したものを作ってみたいと思います(たぶん)。