Abspielen, Anhalten oder Stoppen eines einzelnen Soundeffekts

Diese Seite wurde aktualisiert :
Erstellungsdatum der Seite :

Verifizierungsumgebung

Fenster
  • Windows 11
Unity-Editor
  • 2021.3.3f1
Eingabesystem-Paket
  • 1.3.0

Voraussetzungen für diesen Tipp

Die folgenden Einstellungen wurden im Vorfeld als Prämisse für die Beschreibung dieses Tipps vorgenommen.

Über das Material, das in der Probe enthalten ist

Soundeffekte sind von den folgenden Seiten ausgeliehen.

Informationen zu Audiodateien

Die folgenden Audiodateiformate können mit den Standardfunktionen von Unity wiedergegeben werden: Bitte bereiten Sie es im Voraus vor, da es in diesen Tipps verwendet wird.

  • WAV (.wav)
  • OggVorbis (.ogg)
  • MPEG-Schicht 3 (.mp3)

Weitere Informationen finden Sie in der offiziellen Unity-Dokumentation.

Informationen zum Abspielen von Soundeffekten

Es gibt mehrere Möglichkeiten, Soundeffekte abzuspielen, aber hier möchten wir Ihnen eine einfache Möglichkeit zeigen, sie mit den Standardfunktionen abzuspielen.

Der Inhalt besteht darin, eine Schaltfläche anzuordnen und durch Klicken auf die Schaltfläche abzuspielen, anzuhalten und zu stoppen. In einem echten Spiel können Sie den gleichen Prozess implementieren, abgesehen von Schaltflächen.

Platzieren Sie zunächst eine Taste, um den Soundeffekt abzuspielen, wie in der Abbildung gezeigt.

Fügen Sie die vorbereitete Sounddatei hinzu, indem Sie sie in Ihrem Projekt ablegen.

Fügen Sie als Nächstes "Audioquelle" zur Hierarchie hinzu.

Wenn Sie die von Ihnen erstellte Audioquelle auswählen, verfügt die Audioquellenkomponente über einen Audioclip, in den Sie eine Audiodatei aus Ihrem Projekt einfügen können, um sie zu konfigurieren.

Übrigens, wenn Sie das Spiel so starten, wie es ist, wird der von Ihnen eingestellte Soundeffekt plötzlich abgespielt. Dies liegt daran, dass "Beim Spielstart spielen" aktiviert ist. Es ist unwahrscheinlich, dass der Soundeffekt plötzlich abgespielt wird, also lassen Sie dieses Häkchen deaktiviert.

Erstellen Sie als Nächstes ein Skript. SoundPlayer Lassen Sie den Namen als .

Das Skript sieht wie folgt aus:

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 wird später aus dem Editor eingestellt. Diese AudioSource ist diejenige, bei der der zuvor eingestellte Soundeffekt eingestellt wurde.

AudioSource, und -Methoden, sodass Sie die Wiedergabe bzw. das Anhalten PlayPauseStop halten können.

Sie können das Skript an die Audioquelle anfügen, aber in diesem Fall fügen Sie es an das EventSystem an. Stellen Sie sicher, dass Ihr Skript mit der Audioquelle gefüllt ist, die Sie zuvor erstellt haben.

Ordnen Sie nun jede Methode dem click-Ereignis der drei Schaltflächen zu.

Wenn Sie fertig sind, führen Sie das Spiel aus und sehen Sie, ob die Soundeffekte abgespielt werden.

Wiedergabe, Pause und Stopp sind häufig verwendete Begriffe, sodass Sie sie nicht im Detail schreiben müssen, aber ich denke, sie funktionieren wie folgt.

  • Wenn Sie auf die Schaltfläche "Wiedergabe" klicken, wird der Soundeffekt nur einmal abgespielt und bis zum Ende abgespielt.
  • Klicken Sie während der Wiedergabe auf die Pause-Taste, um die Tonwiedergabe zu stoppen
  • Wenn Sie während der Pause auf die Wiedergabetaste klicken, wird der Ton von der gestoppten Position aus wiedergegeben.
  • Klicken Sie während der Wiedergabe auf die Stopp-Taste, um die Wiedergabe des Tons zu stoppen
  • Klicken Sie auf die Wiedergabetaste, während die Wiedergabe von Anfang an unterbrochen ist
  • Wenn Sie während der Pause auf die Stopp-Taste klicken, wird die pausierte Position freigegeben und beim nächsten Spielen von Anfang an.
  • Wenn Sie während der Wiedergabe auf die Wiedergabetaste klicken, wird der aktuell wiedergegebene Ton gestoppt und von Anfang an abgespielt.

Nachteile der alleinigen Verwendung von AudioSource

Es gibt eine Problemumgehung, aber diese Tipps haben die folgenden Nachteile. Wir werden diese Lösungen in einem anderen Tipp behandeln.

Es können nicht zwei oder mehr gleiche Sounds gleichzeitig wiedergegeben werden

Sie können dies überprüfen, indem Sie die Wiedergabetaste mehrmals drücken, aber der vorherige Ton verschwindet, wenn Sie einen neuen Ton abspielen. Apropos Nachteile, es ist ein Nachteil, aber im Gegenteil, wenn Sie den gleichen Ton übereinander spielen, wird die Lautstärke sehr laut, also ist es ein Vorteil in dem Sinne, dass es dies verhindert. Der vorherige Klang verschwindet jedoch weiterhin, so dass er je nach Art des Klangs unnatürlich ist.

Sie müssen so viele Audioquellen haben, wie es Arten von Sounds gibt, die abgespielt werden können

Da in einer AudioSource nur ein Audioclip eingestellt werden kann, müssen Sie eine AudioSource bereitstellen, da Sie so viele Sounds haben, wie Sie möchten. Sie können auch nur eine AudioSource vorbereiten und den Audioclip ändern, wenn Sie einen anderen Sound abspielen. Es ist unnatürlich, weil der vorherige Ton aufgrund des Problems verschwindet, dass zwei oder mehr gleiche Töne, die zuvor geschrieben wurden, nicht gleichzeitig abgespielt werden können.