BGMを消えないようにする

効果音を多く発音してしまった結果、BGMが消えてしまうといった事がよくあります。
BGMを消えないようにするとはどういうことかを紹介します。

最大同時発音数について

音の同時に発音できる数には限りがあります。
同時発音最大数は、ボイスプールなどの数などで初期化時に決めることができます。
多くするとそれだけメモリやCPU消費をするようになります。

少なくした場合は、発音オーバーする可能性が高まります。

最大同時発音数を越えた場合

同時発音数が多すぎて、発音リミット数を越えてしまう場合、通常、古い音が消えていきます。
単純な1shot音の場合はこれで問題ないですが、以下の問題があります。

問題

BGMなど先に再生して鳴らしっぱなしにしている時に、
大量のショット音や爆発音で発音数に達した場合、古い発音であるBGMが消えてしまう可能性があります。

解決方法

そこで、BGMなどはボイスプライオリティ(優先度)を上げることで、発音リミット数に達した時に
優先度の低い音が消える対象になります。

これで、その他の音でかき消される心配が無くなります。

設定方法

初期値の0から大きめの値(ここでは127)に変更しておくことで消えにくくすることができます。

20141215ボイスプライオリティ

 

さらに効果音もボイスリミットグループに所属させて、ある程度の数で制限する方法も有効です。