BGMの再生コア部分完成

oggVorbisはまだ対応していないが、WAVだけはコア部分完成。ちゃんとループする。


ジョイパッド対応はShinGL3とほぼ同じように使えると思う。

BGMもShinGL3とほぼ同じように使える。

ただ、ジョイパッド対応と同じく単体で使えるようにするため、準備と後始末が必要になった。

現時点でのBGM再生は以下のようになる。

File file = new File("hoge.wav");
//初期化
SGBgm.init();

//BGMの再生
SGBgm.play(file);
〜省略〜
//BGM停止
SGBgm.stop();

//後始末
SGBgm.dispose();

これでhoge.wavが無限ループで再生される。


もちろんShinGL3と同様に、2つの音声ファイルを用意して最初のファイルはループなしで再生、、終わったらすぐに2つ目のファイルを再生し、無限ループということもできる。

SGBgm.play(file1 ,file2);

これで大概のBGM処理は大丈夫だと思う。


とりあえず今の段階でもGCや生成コストの負荷は大幅に減っているはず。メモリの使用量も大幅に削減された。


これからoggVorbis対応して、各種コマンド(ボリュームの設定とか)を追加する。それでやっとShinGL3に機能的に追いつくかな。また、今回はリソースからの読み込み等も最初から対応する予定。