84.BGMの音量を変更したり,切り替えたりしてみよう
😺前回に引き続き、BGMの音量を変えたり切り替える処理を作成していきます。BGMを再生させた後に調整する基本的な方法について学んでいきましょう。
事前準備
前回のページで作成したBackgroundMusicというサウンドキューを使用していきます。
https://scrapbox.io/files/65ce7635edde530025c8ccc7.jpg
このサウンドキューの中身です↓Stater_Wind06というスターターコンテンツのサウンドウェーブをセットしています。
https://scrapbox.io/files/65ce7644ec28a700235b7bc0.jpg
🐱ではまずは音量から変更してみましょう。
①ゲームプレイ中に音量を変更してみよう|実践
今回作るノードは全てレベルブループリントに記載していきます。
以下のようにノードを作成します。BeginPlayからSpawnSound2Dノードを作成します。SoundにはBackgroundMusicのサウンドキューを設定して、Retrunvalueから右クリック > 変数へ昇格をクリックします。変数の名前はBackgroundMusicとします。
https://scrapbox.io/files/65ce765aae23c70027820093.jpg
FキーノードからAdjustVolumeノードを追加します。
https://scrapbox.io/files/65ce76d3a782240025513e38.jpg
AdjustVolumeノードとは?
AdjustVolumeノードは音量調整を行うノードです。AdjustVolumeDurationで音量が変化するまでの時間、AdjustVolumeLevelで音量を調整できます。
プレイしてみてFキーを入力すると音量が変更されます。
https://youtu.be/IsF1Wh-cQVE
②BGMのフェードイン,フェードアウトを実装する|実践
ではBGMの音量を徐々に音量を上げて再生するフェードインから実装していきましょう。
レベルブループリントに以下のノードを作成します。BeginPlayからCreateSound2Dノードを作成します。ReturnValueから右クリック > 変数へ昇格をクリックして変数の名前をBackgroundMusic(既に作成済みならそれを使用)にします。その後FadeInノードを作成します。FadeInノードのDurationは3.0にします。
https://scrapbox.io/files/65ce77d5d29c9c0025c22dcd.jpg
CreateSound2Dノードとは?
サウンド(オーディオコンポーネント)を作成するノードです。作成するだけで音声は再生しません。
FadeInノードとは?
FadeInノードは音量を徐々に上げつつ再生するノードです。FadeDurationで5に設定する事により5秒間かけてFadeVolumeLevelの音量になります。
次にOキーのノードを作成して、FadeOutノードを作成します。FadeOutDurationに3と入力します。
https://scrapbox.io/files/65ce7809baaf8b0023b4f562.jpg
最終的にこんな感じになり、フェードインとアウトが実装できました。
https://scrapbox.io/files/65ce78207b4c0900245ce90c.jpg
プレイしてみると最初にフェードインでBGMの音量が徐々に上がっていき、その後にOキーを押すとフェードアウトで音量が減少します。
https://youtu.be/q5ucJLMcdBw
😺BGMを自然に切り替えたい時にこれらのノードは使用していきましょう。では次にBGMの切り替えを行っていきます。ここからはここまでの応用なのでほぼ似たようなノードになります。
③BGMを切り替えてみよう|実践
まずはFirst_BGMとSecond_BGMというサウンドキューを作成します。
https://scrapbox.io/files/65ce788a5812f7002552d5cd.jpg
まずはFirst_BGMの中身を作成していきます。WavePlayerを追加してStarter_Music01を設定します。
https://scrapbox.io/files/65ce7891ec92a8002566b136.jpg
Second_BGMの中身を作成していきます。WavePlayerを追加してStarter_Wind06を設定します。
https://scrapbox.io/files/65ce7899ec28a700235b84e8.jpg
レベルブループリントに以下のノードを作成します。SpawnSound2DノードのSoundにはFirst_BGMを設定します。ReturnValueを右クリック>変数を昇格で名前をFirst_BGMにします。
https://scrapbox.io/files/65ce78a77b4c0900245ceb6a.jpg
次にCキーを作成して、Stopノードを作成します。最後にSpawnSound2DノードでSecond_BGMを設定します。
https://scrapbox.io/files/65ce78b783dbd9002452b863.jpg
最終的に以下のノードになります↓
https://scrapbox.io/files/65ce78c30d7c86002429bc4b.jpg
再生してCキーを押すとBGMが切り替わるのが確認できます。
https://youtu.be/qvNSnK62mi8
🐱では次にフェードで自然に切り替えてみます↓
④BGMをフェードで自然に切り替える|実践
次にフェードでBGMを切り替えてみましょう。先程の「③BGMの切り替えてみよう」で作ったノードと似たような感じになります。
まずはSpawnSound2DノードのSoundにはFirst_BGMを設定します。
https://scrapbox.io/files/65ce78f4baaf8b0023b4f894.jpg
追加で以下のノードを作成します。見にくい場合は下のBlueprintUEをご覧ください。
まずFadeOutでFirst_BGMをフェードアウトさせます。その後Delayで2秒遅延させて、CreateSound2DでSecond_BGMのサウンドキューをセットして最後にFadeInでフェード再生させます。
https://scrapbox.io/files/65ce792254215a0024f2dc3d.jpg
最終的には以下になります↓
https://scrapbox.io/files/65ce794c5812f7002552d861.jpg
再生してCキーを押すとフェードがかかってBGMが切り替わります。Delayノードでフェードアウトが完了する2秒後まで待っているので完全に停止してからフェードインで再生されています。
https://youtu.be/Qt2NiH7rB88
これでBGMの音楽の調整は以上になります。
基本的にBGMをゲームで再生する場合はサウンドキューを作成してブループリントからSpawnSound2Dノードを使用し、そのあとPlayやFadeInなどのノードでBGMを操作するという流れになります。
🐱では次回から効果音について解説していきます。今回は以上です。お疲れ様でした。