【Unity】Audioの使い方!自由自在に音楽を再生しよう!

Unity Unity

Audioの使い方!自由自在に音楽を再生しよう!

ゲーム制作をするうえで欠かせない要素である、BGMや効果音の実装方法を今回は解説します。

スクリプトを使わずに初心者の方でも簡単にできるやり方と、ゲーム制作をするうえで汎用性が高いスクリプトを使った2種類方法で解説します。

なお、下記のサイトより音源をダウンロードしています。

全曲無料・フリー音楽素材/魔王魂
登録不要で使えるフリー音楽素材が1000点以上。全曲その場で視聴、ダウンロード可能です。全て無料で商用でも使えます。

スクリプトを書かずにやる方法

音楽を再生(BGM)

音楽を再生するには、Audio Sourceを使用します。

では、やっていきましょう!

Hierarchy→Audio→Audio Sourceで追加してください。

Add-AudioSource

 

Audio SourceコンポーネントのAudio Clipに再生させたい音楽をドラックアンドドロップで追加します。

Add-BGM

Audio Sourceコンポーネントは、Play on Awakeが初めからチェックが入っています。これは、実行後すぐに音楽を再生するという意味です。自身のプロジェクトに合った使い方をしてください。

PlayOnAwake

先程追加した音楽はBGMとして利用するので、Audio SourceコンポーネントのLoopにチェックを入れておきます。ここにチェックを入れることで、音楽をループして再生できるようになります。逆に、チェックが入っていなければ、一通り再生されると音楽はそこで止まってしまします。

Audio-Loop

実行してみてください。BGMが流れるはずです。

以上で、BGMの設定は完了です。

ボタンを押したときのみ音楽を再生

ゲームに効果音をつけたい場合は、ボタンを押したときのみ音楽を再生する必要があります。

ButtonのOn Clickが発生した場合になるようにすることで効果音をつけることができます。

では、やっていきましょう!

ButtonコンポーネントのOn Clickの+ボタンを押し、Audio Sourceをドラックアンドドロップで追加してください。

Add-AudioSource

On ClickがNo Functionになっているので、Audio Source→PlayOneShot(一回だけ再生する)をクリックしてください。

PlayOneShot

効果音にしたい音楽をドラックアンドドロップでOn Clickに追加して終了です。

Add-SE

以上で、効果音の設定は完了です。

実行してButtonをクリックしてみてください。

効果音が流れます。

スクリプトから音楽を再生する方法

ゲーム制作では、場面ごとに効果音を設定しなければならないものが多く、効果音を鳴らした場合はスクリプトを使って鳴らすことが多いです。

そこで今回は、スクリプトを使って効果音を鳴らす方法も解説します。

スクリプトを作成

それでは、音楽を再生するためのスクリプトを作っていきましょう!

Assets→Create→C#Scriptで作成してください。

C#Script

今回はAudioを制御するスクリプトなので、スクリプト名はAudioManagerとします。

AudioManagerスクリプト

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class AudioManager : MonoBehaviour
{
public AudioClip impact;//効果音を取得
AudioSource audioSource;//AudioSourceを使う
void Start()
{
audioSource = GetComponent<AudioSource>();//AudioSourceコンポーネントを取得
}

public void PushButton()//ボタンを押したら
{
audioSource.PlayOneShot(impact, 0.5f);//0.5秒効果音を鳴らす
}
}

ButtonオブジェクトにAudioManagerスクリプトをドラックアンドドロップして追加します。

Add-AudioManager

AudioManagerスクリプトでAudioSourceコンポーネントを取得するので、AudioSourceコンポーネントをButtonにAdd Componentで追加します。

Add-AudioSource

ButtonコンポーネントのOn ClickにButtonオブジェクトを追加

OnClick-Add-Buton

On ClickがNo Functionになっているので、AudioManager→PushButtonを選択

OnClick-Add-PushButton

最後にButtonオブジェクトのAudioManagerスクリプトに効果音を追加して設定完了です。

Add-SE

実行してButtonをクリックしてみてください。

効果音が流れます。

まとめ

ゲーム制作をするうえで欠かせない要素である、BGMや効果音の実装方法を今回は解説しました。

スクリプトを使って好きなタイミングで効果音を鳴らす方法は、ゲーム制作をするうえでとても役に立つので覚えておくようにしましょう!

コメント

タイトルとURLをコピーしました