LemonteaのUnity部屋

LemonteaのUnity部屋

Unityの使い方とかです~

Unity JsonUtilityでつくった音ゲーの譜面を読みこんで音符を流す

こんにちは。レモンティーです。

前回、Json形式で音ゲーの楽譜を作成しました。
sawalemounity.hatenablog.com

今回は、それを読み込んで、
実際に音譜を生成してみます。

やり方は

・ファイルを読み込む
・音を流しながら時間をはかる
・タイミングがきたら音譜を生成

です

さっそくやってみます。


・ファイルを読み込む

ここで紹介したようにして、ファイルを読み込みます
Unity Json形式とファイルへの書き出し・読み込み - LemonteaのUnity部屋

MakeNote mk = new MakeNote()

としておいて

string json = File.ReadAllText(FilePath);
        JsonUtility.FromJsonOverwrite(json, mk);

で読み込んだ内容がmkに反映されます。


・音を流しながら時間をはかる

楽譜のBGMを流します
初めてのスクリプト(9) BGM・効果音の再生 - LemonteaのUnity部屋

そして、Update内で時間をカウントします。

TimeCount += Time.deltaTime;


・タイミングがきたら音譜を生成

時間をカウントしながら、
楽譜に記録された時間になったかどうか判定します。

 if (TimeCount >= mk.MusicScore[i])

そして、タイミングがきたら音譜を生成します。
今回は、あらかじめNotesという配列に
音譜のオブジェクトを取得しておき

Instantiate(Notes[mk.NoteKind[i]], CubePos, Quaternion.identity);

このようにして3種類の音譜をだしています

これで自分が記録したタイミングに合わせて
音譜が生成されるようになりました。


今回はこれでおしまいです。

関連

前回
sawalemounity.hatenablog.com
JsonUtilityとファイルの読み書き
sawalemounity.hatenablog.com