Predvajanje, začasna zaustavitev ali ustavitev posameznega zvočnega učinka
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
Zvočni učinki so izposojeni na naslednjih spletnih mestih.
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.
- WAV (.wav)
- OggVorbis (.ogg)
- MPEG plast 3 (.mp3)
Za več informacij glejte uradno dokumentacijo Unity.
O predvajanju zvočnih učinkov
Obstaja več načinov za predvajanje zvočnih učinkov, tukaj pa vas želimo voditi skozi preprost način predvajanja 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 zvočnega učinka, 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, se bo zvočni učinek, ki ste ga nastavili, nenadoma predvajal. To je zato, ker je označeno polje »Igraj na začetku igre«. Malo verjetno je, da se bo zvočni učinek predvajal nenadoma, zato pustite to preverjanje nepreverjeno.
Nato ustvarite skript. SoundPlayer
Pustite ime kot .
Scenarij izgleda takole:
using UnityEngine;
public class SoundPlayer : 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 avdio vir je tisti, pri katerem je zvočni učinek nastavljen prej.
AudioSource
, in načine, da lahko predvajate, začasno ustavite in Play
Pause
Stop
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.
Ko končate, zaženite igro in preverite, ali se zvočni učinki predvajajo.
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 zvočni učinek 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.
Slabosti uporabe samega AudioSourcea
Obstaja rešitev, vendar ima ta nasvet naslednje pomanjkljivosti. Te rešitve bomo obravnavali v drugem nasvetu.
Dveh ali več istih zvokov ni mogoče predvajati hkrati
To lahko preverite tako, da večkrat pritisnete gumb za predvajanje, vendar prejšnji zvok izgine, ko predvajate nov zvok. Ko že govorimo o slabostih, je to pomanjkljivost, toda nasprotno, če predvajate isti zvok drug na drugega, bo glasnost zelo glasna, zato je prednost v smislu, da jo preprečuje. Vendar pa bo prejšnji zvok še vedno izginil, zato bo glede na vrsto zvoka nenaraven.
Imeti morate toliko zvočnih virov, kot je vrst zvokov za predvajanje
Ker je v viru zvoka mogoče nastaviti samo en zvočni posnetek, morate navesti avdiovir, kot želite toliko zvokov. Pripravite lahko tudi samo en avdio vir in spremenite zvočni posnetek pri predvajanju drugega zvoka. To je nenaravno, ker prejšnji zvok izgine zaradi težave, da dveh ali več istih zvokov, napisanih prej, ni mogoče predvajati hkrati.