Háttérzene lejátszása, szüneteltetése, leállítása és ismétlése
Ellenőrzési környezet
- Windows
-
- Windows 11 esetén
- Unity-szerkesztő
-
- 2021.3.3f1
- Bemeneti rendszercsomag
-
- 1.3.0
A tipp előfeltételei
A következő beállításokat előre elvégeztük a tipp leírásának előfeltételeként.
A mintához mellékelt anyagról
A BGM-et a következő oldalról kölcsönzik.
Hangfájlokról
A következő hangfájlformátumok játszhatók le a Unity szabványos funkcióival: Kérjük, készítse elő előre, mert ezekben a tippekben fogják használni.
- OggVorbis negyed (.ogg)
- MPEG 3. réteg (.mp3)
További információért tekintse meg a Unity hivatalos dokumentációját.
A BGM-lejátszásról
A háttérzene lejátszásának számos módja van, de itt szeretnénk elmagyarázni, hogyan lehet egyszerű módon lejátszani a szokásos funkciók használata közben.
A tartalom egy gomb elrendezése, valamint a gombra kattintva történő lejátszás, szüneteltetés és leállítás. Egy tényleges játékban ugyanazt a folyamatot hajthatja végre, mint a gombok.
Először helyezzen el egy gombot a BGM lejátszásához az ábrán látható módon.
Adja hozzá az előkészített hangfájlt úgy, hogy bedobja a projektbe.
Ezután adja hozzá az "Audio Source" -t a hierarchiához.
Amikor kiválasztja a létrehozott hangforrást, a Hangforrás összetevő rendelkezik egy hangklippel, amelybe egy hangfájlt húzhat a projektből a konfiguráláshoz.
Egyébként, ha elindítja a játékot, ahogy van, a beállított BGM hirtelen elindul. Ez azért van, mert a "Lejátszás a játék kezdetén" be van jelölve. Ha azonnal le akarja játszani a jelenet elején, akkor nincs probléma, de ezúttal nem fog azonnal lejátszani, ezért hagyja bejelölve ezt a csekket.
Ezután hozzon létre egy szkriptet. MusicPlayer
Hagyja meg a nevet .
A szkript így néz ki:
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
később lesz beállítva a szerkesztőből. Ez az AudioSource az, amely az imént beillesztett hangfájlt tartalmazza.
AudioSource
, és metódusokat, így lejátszhatja, szüneteltetheti és Play
Pause
Stop
leállíthatja őket.
A szkriptet csatolhatja a hangforráshoz, de ebben az esetben az eseményrendszerhez kell csatolnia. Győződjön meg arról, hogy a szkript fel van töltve a korábban létrehozott hangforrással.
Most rendelje hozzá az egyes módszereket a három gomb kattintási eseményéhez.
A beállítás után futtassa a játékot, és nézze meg, hogy a háttérzene lejátszódik-e.
A lejátszás, a szünet és a leállítás gyakran használt kifejezések, így nem kell részletesen leírni őket, de azt hiszem, a következőképpen működnek.
- Ha rákattint a lejátszás gombra, a háttérzene csak egyszer kerül lejátszásra, és a végéig lejátszásra kerül.
- Lejátszás közben kattintson a szünet gombra a hang lejátszásának leállításához
- Ha szüneteltetett állapotban rákattint a lejátszás gombra, a hang lejátszása leállított helyzetből történik.
- Kattintson a leállítás gombra lejátszás közben a hang lejátszásának leállításához
- Kattintson a lejátszás gombra, miközben megállt az elejétől való lejátszáshoz
- Ha szünet közben rákattint a stop gombra, feloldja a szüneteltetett pozíciót, és a következő alkalommal, amikor játszik, az elejétől kezdődik.
- Ha lejátszás közben a lejátszás gombra kattint, az éppen lejátszott hang leáll, és lejátszása elölről kezdődik.
Hurok lejátszás
Alapértelmezés szerint háttérzenét játszik le, és automatikusan leáll, amikor a végéig játsszák. Ha hurkolni szeretné a háttérzenét és folytatni szeretné a lejátszást, jelölje be a "Loop" lehetőséget az Audio Source komponensben, és a lejátszás többször folytatódik, amíg meg nem nyomja a stop gombot.
A hangeffektus lejátszásának tartalma megegyezik
Ha már látta a tippeket a hanghatás oldalán, akkor észrevehette, hogy a hangeffektus és a háttérzene ugyanazokkal a beállításokkal játszható le. A játékkerettől függően a hanghatások és a háttérzene feldolgozása külön lehet, de a Unity lehetővé teszi, hogy mindkettőt ugyanazzal a feldolgozással játssza.
A jelenségről, hogy a háttérzene szünetel, amikor az ablak ki van kapcsolva
Alapértelmezés szerint, ha más ablakok aktívak, és a játék képernyője ki van kapcsolva, maga a játék szünetel. Ezzel együtt a háttérzene lejátszása is felfüggesztésre kerül.
Ennek elkerülése érdekében beállíthatja, hogy a háttérben fusson a projektbeállításokban, hogy a háttérzene ne szakadjon meg.