播放、暫停、停止和迴圈播放背景音樂

更新頁 :
頁面創建日期 :

驗證環境

窗戶
  • 視窗 11
統一編輯器
  • 2021.3.3f1
輸入系統包
  • 1.3.0

此提示的先決條件

作為此提示描述的前提,已預先進行了以下設置。

關於樣品中包含的材料

BGM是從以下網站借來的。

關於音訊檔

可以使用 Unity 的標準功能播放以下音訊檔案格式: 請提前準備,因為它將在這些提示中使用。

  • 奧格沃比斯 (.ogg)
  • MPEG 第 3 層 (.mp3)

有關更多資訊,請參閱官方 Unity 文件。

關於背景音樂播放

有幾種播放背景音樂的方法,但在這裡我們想解釋如何在使用標準功能時以簡單的方式播放它。

內容是排列一個按鈕,並通過按兩下該按鈕來播放、暫停和停止。 在實際遊戲中,您可以實現按鈕以外的相同過程。

首先,放置一個按鈕來播放BGM,如圖所示。

通過將準備好的音訊檔拖放到專案中來添加該檔。

接下來,將「音頻源」添加到層次結構中。

選擇建立的音訊源時,「音訊源」元件具有一個音訊剪輯,您可以將專案中的音訊檔拖放到其中以進行配置。

順便說一句,如果您按原樣啟動遊戲,您設置的 BGM 會突然播放。 這是因為選取了「在遊戲開始時播放」。 如果您想在場景開始時立即播放它,則沒有問題,但這次它不會立即播放,因此請取消選中此檢查。

接下來,創建一個腳本。 MusicPlayer 將名稱保留為 。

文稿如下所示:

using UnityEngine;

public class MusicPlayer : MonoBehaviour
{
  [SerializeField] private AudioSource AudioSource;

  public void OnClickPlay()
  {
    // オーディオを再生します
    AudioSource.Play();
  }

  public void OnClickPause()
  {
    // オーディオを一時停止します
    AudioSource.Pause();
  }

  public void OnClickStop()
  {
    // オーディオを停止します
    AudioSource.Stop();
  }
}

AudioSource 稍後將從編輯器中設置。 此音訊源是您剛剛插入的音訊檔的音訊源。

AudioSource、 和方法,因此您可以分別播放、暫停和PlayPauseStop停止。

您可以將文稿附加到音訊源,但在本例中,您需要將其附加到事件系統。 確保腳本填充了之前創建的音訊源。

現在將每個方法分配給三個按鈕的按兩下事件。

設置完成後,運行遊戲並查看背景音樂是否播放。

播放、暫停和停止是常用術語,因此您無需詳細編寫它們,但我認為它們的工作原理如下。

  • 按兩下播放按鈕時,背景音樂僅播放一次並播放到最後。
  • 在播放過程中,按兩下暫停按鈕以停止播放聲音
  • 當您在暫停時按下播放按鈕時,聲音將從停止位置播放。
  • 在播放過程中按下停止按鈕以停止播放聲音
  • 停止播放時按下播放按鈕以從頭開始播放
  • 在暫停期間按兩下停止按鈕將釋放暫停的位置,下次您玩遊戲時,它將從頭開始。
  • 如果在播放過程中按下播放按鈕,則會停止當前播放的聲音並從頭開始播放。

迴圈播放

默認情況下,它播放背景音樂,並在播放到最後時自動停止。 如果要迴圈播放背景音樂並繼續播放,請檢查音訊源元件中的「迴圈」,它將繼續重複播放,直到您按下停止按鈕。

音效播放內容相同

如果您已經看到了音效方面的提示,您可能已經注意到音效和背景音樂可以使用相同的設置播放。 根據遊戲框架的不同,音效和背景音樂的處理可能是分開的,但 Unity 允許您使用相同的處理方式播放兩者。

關於視窗停用時背景音樂暫停的現象

默認情況下,當其他視窗處於活動狀態且遊戲螢幕停用時,遊戲本身將暫停。 與此同時,背景音樂的播放也被暫停。

為避免這種情況,您可以在項目設置中將其設置為在後台運行,以便背景音樂不會中斷。