Predvajanje, začasna zaustavitev, ustavitev in zanka glasbe v ozadju

Stran posodobljena :
Datum ustvarjanja strani :

Okolje za preverjanje

Windows
  • Windows 11
Urejevalnik Unity
  • 2021.3.3F1
Paket vhodnega sistema
  • 1.3.0

Predpogoji za ta nasvet

Naslednje nastavitve so bile vnaprej narejene kot premisa za opis tega nasveta.

O materialu, vključenem v vzorec

BGM si izposodimo na naslednji strani.

O zvočnih datotekah

S standardnimi funkcijami Unity lahko predvajate naslednje oblike zapisa zvočnih datotek: Prosimo, pripravite ga vnaprej, ker bo uporabljen v teh nasvetih.

  • OggVorbis (.ogg)
  • MPEG plast 3 (.mp3)

Za več informacij glejte uradno dokumentacijo Unity.

O predvajanju BGM

Obstaja več načinov za predvajanje glasbe v ozadju, tukaj pa želimo razložiti, kako jo predvajati na preprost način ob uporabi standardnih funkcij.

Vsebina je, da razporedite gumb in predvajate, začasno ustavite in ustavite s klikom na gumb. V dejanski igri lahko isti postopek izvedete drugače kot gumbe.

Najprej postavite gumb za predvajanje BGM, kot je prikazano na sliki.

Pripravljeno zvočno datoteko dodajte tako, da jo spustite v projekt.

Nato v hierarhijo dodajte »Avdio vir«.

Ko izberete vir zvoka, ki ste ga ustvarili, ima komponenta Vir zvoka zvočni izrezek, v katerega spustite zvočno datoteko iz projekta, da jo konfigurirate.

Mimogrede, če začnete igro takšno, kot je, bo BGM, ki ste ga nastavili, nenadoma igral. To je zato, ker je označeno polje »Igraj na začetku igre«. Če ga želite predvajati takoj na začetku prizora, ni problema, kot je, vendar tokrat ne bo igral takoj, zato pustite ta ček nepreverjen.

Nato ustvarite skript. MusicPlayer Pustite ime kot .

Scenarij izgleda takole:

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 bo nastavljen pozneje iz urejevalnika. Ta AudioSource je tisti z zvočno datoteko, ki ste jo pravkar vstavili.

AudioSource, in načine, da lahko predvajate, začasno ustavite in PlayPauseStop ustavite.

Skript lahko priložite viru zvoka, vendar ga boste v tem primeru priložili sistemu EventSystem. Prepričajte se, da je skript izpolnjen z zvočnim virom, ki ste ga ustvarili prej.

Zdaj dodelite vsako metodo dogodku klika treh gumbov.

Po nastavitvi zaženite igro in preverite, ali se predvaja glasba v ozadju.

Igranje, premor in ustavitev so pogosto uporabljeni izrazi, zato vam jih ni treba podrobno pisati, vendar mislim, da delujejo na naslednji način.

  • Ko kliknete gumb za predvajanje, se glasba v ozadju predvaja samo enkrat in predvaja do konca.
  • Med predvajanjem kliknite gumb za začasno ustavitev, da ustavite predvajanje zvoka
  • Ko med premorom kliknete gumb za predvajanje, se zvok predvaja iz ustavljenega položaja.
  • Med predvajanjem kliknite gumb za zaustavitev, da ustavite predvajanje zvoka
  • Kliknite gumb za predvajanje, ko ste se ustavili za predvajanje od začetka
  • Če med premorom kliknete gumb za zaustavitev, se sprosti začasno ustavljen položaj in naslednjič, ko igrate, bo to od začetka.
  • Če med predvajanjem kliknete gumb za predvajanje, se zvok, ki se trenutno predvaja, ustavi in predvaja od začetka.

Predvajanje zanke

Privzeto predvaja glasbo v ozadju in se samodejno ustavi, ko se predvaja do konca. Če želite zanko glasbe v ozadju in nadaljevati predvajanje, označite »Zanka« v komponenti Vir zvoka in se bo še naprej ponavljala, dokler ne pritisnete gumba za zaustavitev.

Vsebina predvajanja zvočnih učinkov je enaka

Če ste že videli namige na strani zvočnih učinkov, ste morda opazili, da lahko zvočni učinek in glasbo v ozadju predvajate z enakimi nastavitvami. Glede na okvir igre je lahko obdelava zvočnih učinkov in glasbe v ozadju ločena, vendar Unity omogoča igranje obeh z isto obdelavo.

O pojavu, ki ga glasba v ozadju začasno ustavi, ko je okno deaktivirano

Ko so druga okna aktivna in je zaslon igre deaktiviran, je igra privzeto začasno ustavljena. Poleg tega je prekinjeno tudi predvajanje glasbe v ozadju.

Če se želite temu izogniti, ga lahko nastavite tako, da se izvaja v ozadju v nastavitvah projekta, tako da glasba v ozadju ne bo prekinjena.