Unityアセットストアセール中!

【Unity】音を鳴らすオブジェクトをC#から呼び出すAudioSource.Play()

スポンサードリンク
スポンサードリンク

自身のモチベーション維持のため学習記録を残していきます。
Unityを使ったゲームアプリ開発のメモです。

■環境

Unity6
Windows 11

目次

Unityで音が再生できるファイル

  • .mp3
  • .ogg
  • .wav
  • .aiff/.aif

オーディオコンポーネントの設定

C#スクリプトコンポーネントを追加したゲームオブジェクトに

  • AudioSourceコンポーネントを追加。
  • Audio Resourceに再生するオーディオファイルを選択。
    void Start()
    {
          Debug.Log("ゲームスタートしたらAudioSourceで音を再生する");
          //アタッチしているゲームオブジェクトのAudioSourceを取得して再生
          GetComponent<AudioSource>().Play();

        
    }

起動時に再生

Play On Awakeを入れておくと起動時に問答無用で音が鳴ります。鳴らしたくない場合はPlay On Awakeのチェックを外す。

音を鳴らすオブジェクトをC#から呼び出す

音の再生・停止の書き方

audioSource.Play(); //音の再生
audioSource.Stop(); // 音の停止

public bool topFlg  = false;

public void pressTop () {
        if (!topFlg){
            Debug.Log(" trueで停止");
            GetComponent<AudioSource>().Stop();

            topFlg = true;

        } else {
            Debug.Log(" falseで再生");
            GetComponent<AudioSource>().Play();
            topFlg = false;
        }

}

コンポーネントから呼び出し


 public void pressTop () {
       Debug.Log("関数で呼び出す");
       GetComponent<AudioSource>().Play();
 }

Play()とPlayOneShot()の違い

PlayOneShot()は効果音向けで、Play()と違い音を重ねて鳴らせる。また引数で音量調整が可能。

PlayOneShot(オーディオクリップ,ボリュームの大きさ(float))

AudioSource-PlayOneShot – Unity スクリプトリファレンス

//public void PlayOneShot (AudioClip clip, float volumeScale= 1.0F);

 audiose.PlayOneShot(pressCancelClip,0.5f);

Unity記事 カテゴリリンク

最新のUnityアセットセール情報はこちら

Unityアセットストアのセールを見るにはこちら>>

Unity参考書籍

created by Rinker
¥1,200 (2024/12/26 22:58:30時点 Amazon調べ-詳細)
created by Rinker
SBクリエイティブ
¥2,970 (2024/12/26 22:58:54時点 Amazon調べ-詳細)
スポンサードリンク
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
スポンサーリンク

この記事を書いた人

コメント

コメントを残す

目次