Prehrávanie, pozastavenie, zastavenie a opakovanie hudby na pozadí
Prostredie overovania
- Windows
-
- Windows 11
- Editor jednoty
-
- 2021.3.3f1
- Vstupný systémový balík
-
- 1.3.0
Predpoklady pre tento tip
Nasledujúce nastavenia boli vykonané vopred ako predpoklad pre popis tohto tipu.
O materiáli zahrnutom do vzorky
BGM je požičaný z nasledujúcej stránky.
Informácie o zvukových súboroch
Nasledujúce formáty zvukových súborov je možné prehrávať so štandardnými funkciami Unity: Pripravte si ho vopred, pretože bude použitý v týchto tipoch.
- OggVorbis (.ogg)
- Vrstva MPEG 3 (.mp3)
Viac informácií nájdete v oficiálnej dokumentácii Unity.
Informácie o prehrávaní BGM
Existuje niekoľko spôsobov, ako prehrávať hudbu na pozadí, ale tu chceme vysvetliť, ako ju prehrávať jednoduchým spôsobom pri používaní štandardných funkcií.
Obsahom je usporiadanie tlačidla a prehrávanie, pozastavenie a zastavenie kliknutím na tlačidlo. V skutočnej hre môžete implementovať rovnaký proces okrem tlačidiel.
Najprv umiestnite tlačidlo na prehrávanie BGM, ako je znázornené na obrázku.
Pridajte pripravený zvukový súbor tak, že ho vložíte do projektu.
Potom pridajte do hierarchie "Zdroj zvuku".
Keď vyberiete zdroj zvuku, ktorý ste vytvorili, súčasť Zdroj zvuku obsahuje zvukový klip, do ktorého vložíte zvukový súbor z projektu a nakonfigurujete ho.
Mimochodom, ak spustíte hru tak, ako je, BGM, ktoré ste nastavili, sa zrazu prehrá. Je to preto, že je začiarknuté políčko "Play at game start" (Prehrať pri spustení hry). Ak ju chcete hrať okamžite na začiatku scény, nie je problém taká, aká je, ale tentoraz sa nebude hrať okamžite, takže nechajte túto kontrolu nezačiarknutú.
Potom vytvorte skript. MusicPlayer
Názov ponechajte ako .
Skript vyzerá takto:
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
sa nastaví neskôr z editora. Tento AudioSource je ten, ktorý obsahuje zvukový súbor, ktorý ste práve vložili.
AudioSource
, a metódy, aby ste mohli prehrávať, pozastaviť a Play
Pause
Stop
zastaviť.
Skript môžete pripojiť k zdroju zvuku, ale v takom prípade ho pripojíte k systému udalostí. Skontrolujte, či je skript vyplnený zdrojom zvuku, ktorý ste predtým vytvorili.
Teraz priraďte každú metódu udalosti kliknutia na tri tlačidlá.
Po nastavení spustite hru a skontrolujte, či sa prehráva hudba na pozadí.
Prehrať, pozastaviť a zastaviť sú bežne používané výrazy, takže ich nemusíte písať podrobne, ale myslím si, že fungujú nasledovne.
- Keď kliknete na tlačidlo prehrávania, hudba na pozadí sa prehrá iba raz a prehrá sa až do konca.
- Počas prehrávania kliknutím na tlačidlo pozastavenia zastavíte prehrávanie zvuku
- Keď počas pozastavenia kliknete na tlačidlo prehrávania, zvuk sa prehrá zo zastavenej polohy.
- Kliknutím na tlačidlo zastavenia počas prehrávania zastavíte prehrávanie zvuku
- Kliknite na tlačidlo prehrávania a zároveň zastavte prehrávanie od začiatku
- Kliknutím na tlačidlo stop počas pauzy sa uvoľní pozastavená pozícia a pri ďalšom hraní to bude od začiatku.
- Ak počas prehrávania kliknete na tlačidlo prehrávania, aktuálne prehrávaný zvuk sa zastaví a prehrá od začiatku.
Prehrávanie slučky
V predvolenom nastavení prehráva hudbu na pozadí a automaticky sa zastaví, keď sa prehrá až do konca. Ak chcete prehrávať hudbu na pozadí v slučke a pokračovať v prehrávaní, začiarknite políčko "Loop" v komponente Audio Source (Zdroj zvuku) a bude sa opakovane prehrávať, kým nestlačíte tlačidlo stop.
Obsah prehrávania zvukových efektov je rovnaký
Ak ste už videli tipy na strane zvukových efektov, možno ste si všimli, že zvukový efekt a hudbu na pozadí je možné prehrávať s rovnakými nastaveniami. V závislosti od herného rámca môže byť spracovanie zvukových efektov a hudby na pozadí oddelené, ale Unity vám umožňuje hrať s rovnakým spracovaním.
O jave, že hudba na pozadí sa pozastaví, keď je okno deaktivované
V predvolenom nastavení, keď sú aktívne ostatné okná a obrazovka hry je deaktivovaná, samotná hra sa pozastaví. Spolu s tým je pozastavené aj prehrávanie hudby na pozadí.
Ak sa tomu chcete vyhnúť, môžete ho nastaviť tak, aby sa spúšťal na pozadí v nastaveniach projektu, aby sa hudba na pozadí neprerušovala.