Kursinhalt
Kampfspiel in Unity
Kampfspiel in Unity
Sounds für das Spiel
Audio Listener
Der Audio Listener
ist eine Komponente in Unity, die als die Ohren des Spiels fungiert. Normalerweise an die Hauptkamera oder die Spielfigur angehängt, erfasst er alle Audios im Szenario. Es sollte nur einen Audio Listener
pro Szene geben.
Funktion: Er hört alle Audioquellen ab und bestimmt, was der Spieler hört, indem er 3D-Raumklang erfasst, sodass der Spieler die Richtung und Entfernung von Geräuschen wahrnehmen kann.
Hintergrundmusik mit Audioquelle
Die Audio Source
-Komponente wird verwendet, um Audioclips in Unity abzuspielen. Sie kann an jedes GameObject
angehängt werden, wie z.B. ein dediziertes Objekt für Hintergrundmusik oder Objekte in der Szene, die Soundeffekte ausstrahlen.
Funktion: Die Audio Source
spielt Audioclips ab und kann mit verschiedenen Parametern gesteuert und konfiguriert werden.
Hauptparameter in der Audioquelle-Komponente
AudioClip: Die Audiodatei, die von dieser Audio Source
abgespielt wird.
Ausgabe: Die Audio Mixer Group
, durch die diese Audioquelle ihr Audio leitet. Wenn keine angegeben ist, wird die Standard-Audioausgabe verwendet.
Stummschalten: Wenn aktiviert, wird die Audioquelle stummgeschaltet und spielt keinen Ton ab.
Effekte umgehen: Umgeht alle Effekte, die auf diese Audioquelle angewendet werden, was bedeutet, dass sie ohne angewendete Audioeffekte abgespielt wird.
Hörer-Effekte umgehen: Ignoriert Effekte, die auf den Audio Listener
angewendet werden.
Hallzonen umgehen: Verhindert, dass die Audioquelle von Hallzonen in der Szene beeinflusst wird.
Beim Erwachen abspielen: Wenn aktiviert, beginnt die Audioquelle, den zugewiesenen Audioclip abzuspielen, sobald die Szene startet.
Schleife: Wenn aktiviert, wird die Audioquelle den Audioclip in einer Schleife abspielen und kontinuierlich wiederholen, bis sie gestoppt wird.
Priorität: Bestimmt die Priorität der Audioquelle. Niedrigere Werte bedeuten höhere Priorität, was nützlich ist, wenn viele Audioquellen gleichzeitig abgespielt werden.
Lautstärke: Steuert die Lautstärke der Audioquelle. Beispiel: 0.263 bedeutet, dass das Audio bei etwa 26% seiner ursprünglichen Lautstärke abgespielt wird.
Tonhöhe: Passt die Tonhöhe des Audioclips an. Der Standardwert ist 1. Niedrigere Werte verlangsamen und vertiefen den Klang, während höhere Werte ihn beschleunigen und die Tonhöhe erhöhen.
Stereo-Panorama: Steuert das Stereo-Panorama des Audios. Ein Wert von -1 verschiebt das Audio vollständig nach links, 1 vollständig nach rechts und 0 zentriert das Audio.
Räumliche Mischung: Bestimmt die Mischung zwischen 2D- und 3D-Audio. Ein Wert von 0 macht den Klang vollständig 2D (nicht von der Position des Hörers beeinflusst), während 1 ihn vollständig 3D macht (von der Position des Hörers beeinflusst).
Hallzonen-Mix: Passt die Menge der Audioquelle an, die in die Hallzonen der Szene gemischt wird. Der Standardwert ist 1.
Zusammenfassung
Audio Listener: Erfasst alle Audios in der Szene und ist typischerweise an die Hauptkamera angehängt;
Audioquelle: Spielt Audioclips ab und kann mit verschiedenen Parametern konfiguriert werden, um zu steuern, wie das Audio abgespielt und gehört wird;
Hauptparameter: Beinhaltet AudioClip, Ausgabe, Stummschalten, Effekte umgehen, Beim Erwachen abspielen, Schleife, Priorität, Lautstärke, Tonhöhe, Stereo-Panorama, Räumliche Mischung und Hallzonen-Mix.
Diese Komponenten arbeiten zusammen, um das Audioerlebnis in Unity zu verwalten und zu steuern und bieten immersive und dynamische Klangumgebungen für Spiele.
Abspielen des Angriffssounds
Erklärung zur Verwendung von AudioSource
Raycast-Erkennung: Ein Raycast wird verwendet, um zu erkennen, ob der Angriff des Spielers einen Feind trifft. Der Raycast wird von der Position des Spielers in die Richtung, in die er schaut, mit einer durch attackRange
definierten Reichweite geworfen.
Überprüfung auf Treffer: Wenn der Raycast ein Objekt innerhalb der enemyLayer
trifft, überprüft das Skript, ob das getroffene Objekt das IGetAttacked
-Interface implementiert.
Abspielen des Angriffssounds: Wenn ein Treffer erkannt wird und der Feind angegriffen werden kann (das IGetAttacked
-Interface ist implementiert), wird der Angriffssound abgespielt: attackAudioSource.Play()
.
Zusammenfassung
In der PlayerAttack
-Klasse spielt AudioSource
einen Soundeffekt ab, wenn der Spieler erfolgreich einen Feind angreift, ausgelöst durch attackAudioSource.Play()
in der Update
-Methode nach einem Raycast-Treffer. Dies bietet sofortiges akustisches Feedback und verbessert das Eintauchen in das Spiel.
Danke für Ihr Feedback!