Unityで簡単に音量調整機能を付けることが出来る「AudioConfigure」の紹介
※この記事内で使用しているUnityのバージョンはUnity 2019.2.17f1 Personalです。
これからUnityで音を鳴らそうとしているそこのあなた。
「AudioConfigure」を使えば音を鳴らすだけでなく、簡単に音量調整することもできますよ。
これを入れるだけでユーザーフレンドリなゲームになること間違いなし!!!
...ちょっと胡散臭すぎました。
今回は kankikuchi 様が公開している誰でも簡単に使えるAudioManagerに、少し手を加えて音量調整機能をくっつけました。是非ご一読あれ。
はじめに
このようになっている箇所は、クリックすると隠れている画像などが表示されます。
目次
1. 導入方法
2. 使い方
2-1. BGM ・ SEを再生する場合
2-2. 音量を調節する
3. オプション画面
4. サンプル
5. おさらい
5-1. 音量を調節する
5-2. オプション画面を開く
6. トラブルシューティング
7. まとめ
8. 最後に
1.導入方法について
以下のURLから「Clone or Download」→ 「Download Zip」を選択します。
https://github.com/mugitea7/AudioConfigure
詳しい説明
ダウンロードした.zipファイルを解凍します。
解凍したフォルダの中にある.unitypackageファイルをUnityにインポートします。
これで準備は完了です!
2.使い方
2-1.BGM・SEを再生する場合
ここは kankikuchi 様作成のもので、以下の記事にて詳しく解説されています。
誰でも簡単に使える最強のAudio(BGM, SE)Manager【Unity】
2-2.音量を調節する
AudioConfigure → Option_Mugitea → Prefabs と進み、VolumeManagerをヒエラルキーへドラッグアンドドロップします。
次に、音量を調節するためのスライドバーが必要です。が、これもデフォルトで付いてきます。
(AudioConfigure → Option_Mugitea → Prefabs) → UIObjects から、"BGMVolumeSlider" と "BGMVolumeText" を Canvas の子に設定し、適当に位置を調整します。
これでBGMの音量を調整する準備は整いました。
試しにBGMを再生してみましょう。
ゲームを再生してみると...
音量調節が完了しました。
スライダーを調整すると、右のテキストの数字と共に音量も調整されます。
しかも、この値はゲームを終了しても保存されています。
ゲーム終了の度に音量調整する必要はありません!!
SEの音量も同様にして設定することが出来ます。
なお、音量は最大音量に対する割合を出しています。デフォルトは最大80に設定しているので、音量を100にしても内部での実際の音量は80となっています。
VolumeManagerの各種設定項目について
これは表としてまとめておきます。
名前 | 機能 |
---|---|
BGM(SE) Volume Key | PlayerPrefsに登録するKeyの名称です。 今後の開発においてPlayerPrefsを扱う際、このKeyと同じ名称のKeyを作成しないように注意してください。 |
Default BGM(SE) Volume | 最初にゲームを起動した際に適用される各種音量です。 |
Max BGM(SE) Volume | BGM ・ SE の音量の最大値です。 音量を80以上に設定すると音割れが発生する可能性があるため、上限を設けています。 |
Dont Destroy On Load | Scene遷移を行っても VolumeManager を破棄しないかの設定です。true推奨。 |
「使用方法はわかった、じゃあオプションをつくr...」
※カスタマイズ可能なオプション画面もついてきます。
3.オプション画面
AudioConfigure → Option_Mugitea → Prefabs から、"OptionManager"と"VolumeManager"、そしてヒエラルキー上から"EventSystem"の3つをヒエラルキーに配置します。
スクリプトを書きます。
記述するのは、"using Mugitea.Option"(①)。
呼び出したいタイミングで"OptionManager.Instance.OpenOptionWindow()"と記述するだけ(②)。
閉じるときは"OptionManager.Instance.CloseOptionWindow()"と記述するだけ。(OptionWindowにはデフォルトで閉じるボタンが実装されています)
今回はEnterキーを押すとOption画面が開かれることにします。
これを適当なオブジェクトにアタッチします。
最後に、 AudioConfigure → Option_Mugitea → Scene の中にある"Option"シーンを Scenes In Build に追加します。
実行してみます。
(上記で記述したスクリプトでは)Enterキーを押すと、Option画面が開かれました。
Back ボタンを押すと画面を閉じることが出来ます。
もちろんOption画面はカスタマイズ可能です。
AudioConfigure → Option_Mugitea → Scene の中にある"Option"シーンをダブルクリックして開きます。
これが呼び出されるOption画面です。制作中のゲームの雰囲気に合わせた画面にアレンジしましょう。
4.もちろん、サンプルもついています
AudioConfigure → Option_Mugitea → Sample に、2つのサンプルを用意しました。
ボタンを押すとOption画面が表示されるサンプル(OptionSample)
タイトル画面にBGM・SE調整用のスライダーが用意されているサンプル(TitleSample)
5.おさらい
5-1.音量調整を行う場合
5-2.オプション画面を表示する場合
- VolumeManager、OptionManagerをヒエラルキーに配置
- "Option"シーンを Scenes In Build に配置
- スクリプトを記述
- Option画面のカスタマイズは"Option"シーンを開いて行う
6.トラブルシューティング
Scene 'Option' couldn't be loaded because it has not been added to the build settings or the AssetBundle has not been loaded.
"Option"シーンが Scenes In Build の項目に入っていません。
ここの手順に従い、"Option"シーンを Scenes In Build に追加してください。
7.まとめ
いかがでしょうか。
AudioConfigure をインポートするだけで音に関しては困らない...筈です!
皆様にご活用いただければ幸いです。
8.最後に
今回、kankikuchi 様 制作の AudioManager をMITライセンスに従い 使用・同梱 させていただきました。
また、今回作製した AudioConfigure も同様、MITライセンスに従っております。詳しくは同梱の LICENSE をお読みください。