Odtwarzanie, wstrzymywanie lub zatrzymywanie pojedynczego efektu dźwiękowego

Strona zaktualizowana :
Data utworzenia strony :

Środowisko weryfikacji

Windows
  • Okna 11
Edytor Unity
  • 2021.3.3f1
Pakiet systemu wejściowego
  • 1.3.0

Wymagania wstępne dotyczące tej porady

Poniższe ustawienia zostały wcześniej wprowadzone jako przesłanka do opisu tej wskazówki.

O materiale dołączonym do próbki

Efekty dźwiękowe są zapożyczone z następujących stron.

Informacje o plikach audio

Następujące formaty plików audio mogą być odtwarzane ze standardowymi funkcjami Unity: Proszę przygotować go z wyprzedzeniem, ponieważ zostanie wykorzystany w tych wskazówkach.

  • WAV (.wav)
  • OggVorbis (.ogg)
  • MPEG layer 3 (.mp3)

Aby uzyskać więcej informacji, zapoznaj się z oficjalną dokumentacją Unity.

Informacje o odtwarzaniu efektów dźwiękowych

Istnieje kilka sposobów odtwarzania efektów dźwiękowych, ale tutaj chcemy przeprowadzić Cię przez prosty sposób ich odtwarzania podczas korzystania ze standardowych funkcji.

Zawartość polega na rozmieszczeniu przycisku i odtwarzaniu, wstrzymywaniu i zatrzymywaniu przez kliknięcie przycisku. W rzeczywistej grze możesz zaimplementować ten sam proces inny niż przyciski.

Najpierw umieść przycisk, aby odtworzyć efekt dźwiękowy, jak pokazano na rysunku.

Dodaj przygotowany plik dźwiękowy, upuszczając go do projektu.

Następnie dodaj "Źródło dźwięku" do hierarchii.

Po wybraniu utworzonego źródła dźwięku składnik Źródło dźwięku zawiera klip audio, do którego należy upuścić plik audio z projektu, aby go skonfigurować.

Nawiasem mówiąc, jeśli uruchomisz grę taką, jaka jest, ustawiony efekt dźwiękowy nagle się odtworzy. Dzieje się tak, ponieważ opcja "Graj na początku gry" jest zaznaczona. Jest mało prawdopodobne, że efekt dźwiękowy zostanie odtworzony nagle, więc pozostaw tę kontrolę niezaznaczoną.

Następnie utwórz skrypt. SoundPlayer Pozostaw nazwę jako .

Skrypt wygląda tak:

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 zostanie ustawione później z edytora. Ten AudioSource jest tym, który ma wcześniej ustawiony efekt dźwiękowy.

AudioSource, i metody, dzięki czemu można odpowiednio odtwarzać, wstrzymywać i PlayPauseStop zatrzymywać.

Możesz dołączyć skrypt do źródła dźwięku, ale w tym przypadku dołączysz go do EventSystem. Upewnij się, że skrypt jest wypełniony utworzonym wcześniej źródłem dźwięku.

Teraz przypisz każdą metodę do zdarzenia click trzech przycisków.

Gdy skończysz, uruchom grę i sprawdź, czy efekty dźwiękowe są odtwarzane.

Odtwarzanie, pauza i zatrzymywanie są powszechnie używanymi terminami, więc nie musisz ich szczegółowo pisać, ale myślę, że działają w następujący sposób.

  • Po kliknięciu przycisku odtwarzania efekt dźwiękowy jest odtwarzany tylko raz i odtwarzany do końca.
  • Podczas odtwarzania kliknij przycisk wstrzymania, aby zatrzymać odtwarzanie dźwięku
  • Po kliknięciu przycisku odtwarzania podczas wstrzymania dźwięk jest odtwarzany z pozycji zatrzymanej.
  • Kliknij przycisk zatrzymania podczas odtwarzania, aby zatrzymać odtwarzanie dźwięku
  • Kliknij przycisk odtwarzania, gdy odtwarzanie jest zatrzymane od początku
  • Kliknięcie przycisku zatrzymania podczas pauzy zwolni wstrzymaną pozycję i następnym razem, gdy będziesz grać, będzie to od początku.
  • Jeśli klikniesz przycisk odtwarzania podczas odtwarzania, aktualnie odtwarzany dźwięk zostanie zatrzymany i odtwarzany od początku.

Wady korzystania z samego AudioSource

Istnieje obejście, ale ta wskazówka ma następujące wady. Omówimy te rozwiązania w innej wskazówce.

Nie można odtwarzać dwóch lub więcej takich samych dźwięków w tym samym czasie

Możesz to sprawdzić, naciskając przycisk odtwarzania wiele razy, ale poprzedni dźwięk znika po odtworzeniu nowego dźwięku. Mówiąc o wadach, jest to wada, ale wręcz przeciwnie, jeśli odtwarzasz ten sam dźwięk jeden na drugim, głośność będzie bardzo głośna, więc jest to zaleta w tym sensie, że to uniemożliwia. Jednak poprzedni dźwięk nadal zniknie, więc w zależności od rodzaju dźwięku będzie nienaturalny.

Musisz mieć tyle źródeł dźwięku, ile jest rodzajów dźwięków do odtwarzania

Ponieważ w obiekcie AudioSource można ustawić tylko jeden klip audio, należy podać źródło dźwięku, ponieważ ma tyle dźwięków, ile chcesz. Można również przygotować tylko jedno źródło dźwięku i zmienić klip audio podczas odtwarzania innego dźwięku. Jest to nienaturalne, ponieważ poprzedni dźwięk znika z powodu problemu, że dwa lub więcej tego samego dźwięku napisanego wcześniej nie może być odtwarzane w tym samym czasie.