Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Advanced 3D Sound- Techniques

Ähnliche Präsentationen


Präsentation zum Thema: "Advanced 3D Sound- Techniques"—  Präsentation transkript:

1 Advanced 3D Sound- Techniques
Universität zu Köln Historisch- Kulturwissenschaftliche Informationsverarbeitung WS 2011/12 Dozent: Prof. Dr. Manfred Thaller Hauptseminar: „Software Engineering: Basistechnologien" Vortrag von André Streicher

2 Einführung – Grundlagen des Raumklangs
Wiederholung – physikalische Grundlagen: Schallwellen haben wie jede andere Welle vier Eigenschaften: 1. Geschwindigkeit 2. Amplitude (Schwingungsweite, Lautstärke) 3. Wellenlänge (Länge, Schwingungsdauer) 4. Frequenz (Die Häufigkeit der Schwingungen in einem bestimmten Zeitabschnitt)

3 Einführung – Grundlagen des Raumklangs
Sound Production: - primäre Schallausbreitung zentral von der Quelle aus in alle Richtungen Idealfall, in wahrheit immer hindernisse

4 Einführung – Grundlagen des Raumklangs
Differenzierung der Schallwellen: - Direct Path – Schallwelle, die von der Quelle ohne Inferenzen zum Listener gelangt Richtungs- und Entfernungslokalisation -> horizontal azimuth Winkel - interaurale Laufzeitdifferenz – an welchen Ohr kommt der Ton zuerst an -> Richtung horizontal -> vertikal Elevationswinkel -> spektrale Signale von hohen Frequenzen werden in Ohrmuschel genutzt, um diesen Winkel zu identifizieren Raumklang behindert diese Fähigkeit durch weitere reflektierte Schallwellen

5 Einführung – Grundlagen des Raumklangs
Differenzierung der Schallwellen: - Echo – Schallwelle, die von der Quelle durch eine Reflektion zum Listener gelangt

6 Einführung – Grundlagen des Raumklangs
Differenzierung der Schallwellen: - Widerhall – Schallwelle, die von der Quelle durch mehrere Reflektionen zum Listener gelangt

7 Einführung – Grundlagen des Raumklangs
Differenzierung der Schallwellen: - Kombination aller Schallwellen führt zum schlussendlichen Raumklang Keine einzelnen Wellen sondern simultan mehrere Wellen Wellen treffen mit Verzögerung ein, durch Reflection

8 Einführung – Grundlagen des Raumklangs
Differenzierung der Schallwellen: - Zeitliche Abfolge der Schallwellen Keine einzelnen Wellen sondern simultan mehrere Wellen Wellen treffen mit Verzögerung ein, durch Reflection

9 Einführung – Grundlagen des Raumklangs
Differenzierung der Schallwellen: - Schalldruck -> Lautstärke Keine einzelnen Wellen sondern simultan mehrere Wellen Wellen treffen mit Verzögerung ein, durch Reflection

10 Einführung – Grundlagen des Raumklangs
Reflektion der Schallwellen: - Größe des Raums - Geometrie der Umgebung - Materialität/ Reflektionseigenschaften der Geometrie - Raumposition der Soundquelle - uvm… => Jeweils spezifische Klangfarben der Töne in unterschiedlichen Umgebungen

11 Einführung – Grundlagen des Raumklangs
Geometrie als Hindernis: - Blockade des Direct Path Sound wird viel leiser, später und dumpfer wahrgenommen Lokalisation wird vielfach erschwert Klangfarben differenzieren sich

12 Einführung – Grundlagen des Raumklangs
Geometrie als Hindernis: - Blockade des Direct Path und des Echo Zentral hat dies natürlich mit path finding zu tun! Später sehen wir Ansätze für Mechanismen um die Rechenzeit dahingehend zu reduzieren

13 Einführung – Grundlagen des Raumklangs
Materialität - Reflektions-/ Absorbtionseigenschaften der Materialien - Streuung der Schallwellen - Abspeicherung der Eigenschaften in abrufbaren Datenbanken zur Verknüpfung mit 3D- Modellen/ Polygonbereichen Keine einzelnen Wellen sondern simultan mehrere Wellen Wellen treffen mit Verzögerung ein, durch Reflection

14 Einführung – Grundlagen des Raumklangs
Geometrie und Materialität in Kombination: - Occlusion von Frequenzen Bestimmte Frequenzbereiche werden vom Material durchgelassen, andere absorbiert, sodass sdumpfe oder helle Töne zustande kommen Die Quelle wird hörbar, aber nur durch bestimmte Frequenzen -> dadurch erkennt der Hörer, dass der Gegensatnd sich in einem anderen Raum befindet

15 Einführung – Grundlagen des Raumklangs
Geometrie und Materialität in Kombination: - Occlusion von Frequenzen in Bezug auf das Vermittlungsmedium Das Vermittlungsmedium an sich bewirkt schon eine Veränderung der Klangfarbe Luft, Wasser, bestimmte Gase

16 Reproduktion von Raumklang
EAX - Environmental Audio Extensions in der Version 1.0 von Creative Labs vorgestellt - derzeitige Version EAX Advanced HD 5.0 - Hardware- extension für Soundkarten - normalerweise müsste jeder Ton in seiner jeweils spezifischen Klangfarben für jede Umgebung aufgenommen werden - EAX erzeugt nach Angabe bestimmter Parameter das spezifische Klangmuster jedes Tons - Windows Vista als Betriebssystem schränkt die Nutzbarkeit der EAX Technologie ein - Grundprinzipien von Effekten und Filtern, die auf den Originalsound angewendet werden Das Vermittlungsmedium an sich bewirkt schon eine Veränderung der Klangfarbe Luft, Wasser, bestimmte Gase

17 Reproduktion von Raumklang
Grundprinzipien von Effekten und Filtern, die auf den Originalsound angewendet werden -> Effect- Element Container- Element für Effekte Beeinflussung eines Sounds sowie verschiedene Parameter zur realitätsnahen Gestaltung des Klangverhaltens Basierend auf Wiederhallwert, der spezifisch angepasst wird -> Auxiliary Effect Slot Object Container für die jeweiligen Effect- Elemente Anschließend Anwendung auf die Tonspur einer Soundquelle An einen Slot auch mehrere Quellen anbindbar Das Vermittlungsmedium an sich bewirkt schon eine Veränderung der Klangfarbe Luft, Wasser, bestimmte Gase

18 Reproduktion von Raumklang
Grundprinzipien von Effekten und Filtern, die auf den Originalsound angewendet werden -> Filter- Elemente Differenzierung zwischen zwei Filtern -> Filter der auf das Ursprungssignal angewendet wird -> Filter der auf Effekt- Slot angewendet wird Anpassung des Tonsignals in Bezug auf seinen Frequenzbereich -> Lowpass Filter -> Highpass Filter -> Bandpass Filter Das Vermittlungsmedium an sich bewirkt schon eine Veränderung der Klangfarbe Luft, Wasser, bestimmte Gase

19 Reproduktion von Raumklang
Grundprinzipien von Effekten und Filtern, die auf den Originalsound angewendet werden Das Vermittlungsmedium an sich bewirkt schon eine Veränderung der Klangfarbe Luft, Wasser, bestimmte Gase

20 Reproduktion von Raumklang
Datenspeicherung/ -pufferung <-> Klangeffektproduktionen - Dynamische Datenverwaltung -> Laufzeitumgebung entlasten -> Orientierung an Datenmodellen der Grafik - Klangeffektproduktion -> Automatisiert oder manuell -> Analyse der Grundlagen Art des Spiel Gewichtung des Raumklanges als Element Typisierung der Räume im Spiel Bestehende Datenstrukturen Kosten-/ Nutzenfaktor Das Vermittlungsmedium an sich bewirkt schon eine Veränderung der Klangfarbe Luft, Wasser, bestimmte Gase

21 Reproduktion von Raumklang
Manuelle Definition von Umgebungsarealen - Implementation spezieller Schlüsselstellen/ Trigger - Unterteilung der Level in spezifische Zonen Macht der Leveldesigner

22 Reproduktion von Raumklang
Macht der Leveldesigner

23 Reproduktion von Raumklang
Macht der Leveldesigner

24 Reproduktion von Raumklang
Manuelle Definition von Umgebungsarealen - Definition von begrenzten Zonen - Definition von einzelnen Triggerpunkten, die Ereignisse auslösen - Definition von „Zwischenzonen“ -> Ausgleichbereich zwischen zwei differenten Raumklängen Je nach Position Überblendung des anderen Effekts -> Nach Möglichkeit auch Interpolation Nutzung von Klangpunkten anstatt von Arealen Überblendung = wenig CPU nötig, jedoch nur realistisch bei kleinen Sprüngen der Raumklänge

25 Reproduktion von Raumklang
Klangpunkten statt Areale - Je nach Entfernung zu Klangpunkten Interpolation der Effekte - Untergliederung der Klangpunkte in weitere lokale Phänomene Raumpunkte werden lokal jeweils nochmal unterteilt Möglich auch als Kombination…areale generell und Raumpunkte als lokale Unterteilung Lösung des Problems von Tönen, die aus anderen Arealbereich kommen

26 Reproduktion von Raumklang
Manuelle Definition von Umgebungsarealen - linearer Algorithmus ist bei großen Welten sehr kontraproduktiv => Nutzung effizienterer Datenmodelle zur Entlastung der Laufzeit - Rückgriff auf Datenmodelle im Grafikbereich -> Warum dann nicht Grafik und Ton in einem Datenmodell mit gemeinsamer dynamische Datenverwaltung ablegen?!? Macht der Leveldesigner

27 Reproduktion von Raumklang
PVS vs PAS => Getrennte Datenverwaltung von Grafik und Sound nötig Potentially visible set vs. Potentially audible set Radius Test auch nicht sinnvoll-> Occlusion durch hindernisse –KI hört den Spieler eigentlich nicht Datenverwaltung auch von Game zu Game different -> inwieweit sind sounds durch gebäude hörbar(gewollt hörbar) -> First Player Shooter, Tactical Shooter, Adventure, Strategie System an sich aber sinnvoll, um die Laufzeit zu verbessern

28 Reproduktion von Raumklang
Datenstrukturen um Sound dynamisch zu verwalten -> Grid Logik aus einer BA- Arbeit mit großen Flächen Man lädt immer abhängig von der Position des Listeners die nächsten Felder Vorteile gegenüber Bäumen, konstanter Zeitzugriff -> man weiß immer wie lang es dauert Problem ist die größe der Netzfelder zu bestimmen, vor allem bei nicht konstanten arealen

29 Reproduktion von Raumklang
Datenstrukturen um Sound dynamisch zu verwalten -> BSP Trees Binary Space Partitioning Welt in Flächenunterteilen und diese in Baumstrukturen abzuzeichen Eignet sich in einfachen Räumen sehr gut Bei mehreckigen Flächen wird es zum Problem, die größe des Baums wächst extrem stark an Daher für Games, die nicht nur aus einfachen Räumen, mit einfachen Materialien besteht, sondern in Arealen komplexe Kombinationen von verschiedenen Raumklängen haben, eher ungeignet

30 Reproduktion von Raumklang
Datenstrukturen um Sound dynamisch zu verwalten -> Octrees Octrees Das folgende Beispiel veranschaulicht die häufigste Anwendung eines Octrees, nämlich zur gleichmäßigen Gliederung eines würfelförmigen Datensatzes: Die Wurzel steht für den gesamten Würfel. Der Würfel wird in acht kleinere Würfel – die Oktanten – zerteilt und jeder Nachfolger der Wurzel steht für einen davon. Jeder dieser kleineren Würfel wird wiederum in acht noch kleinere Würfel zerteilt und so weiter. Die Untergliederung eines Teilwürfels endet, wenn keine weitere Teilung mehr möglich oder aber nicht notwendig ist. Das Ursprungsvolumen muss nicht würfelförmig sein, sondern kann auch allgemein quaderförmig sein

31 Reproduktion von Raumklang
Datenstrukturen um Sound dynamisch zu verwalten -> Octrees Die Unterteilung ist im 3D Raum effektiver, da schlussendlich bei jedem Knoten schon in 4 Teile geteilt wird Bild ist natürlich nur Abbildung eines Quadtrees, müsste noch die z- Achse mit abbilden Die Detailsstufe wird in der Baumtraversierung schneller erreicht Auch sehr vorteilhaft, um Informationen über benachbarte Flächen besser zu managen. 4 Flächen befinden sich in der Baumtruktur direkt nebeneinander

32 Reproduktion von Raumklang
Datenstrukturen um Sound dynamisch zu verwalten -> Octrees Modellhaftig könnte sein, Traversierung durch den Octree, ein bestimmtes Areal wird als Octree dargestellt Jeder Endknoten ist dann einer spezifischen Zone zugeordnet Diese Zone ist dann mit bestimmten EAX Properties verknüpft und stellt den speziellen Raumklang bereit

33 Reproduktion von Raumklang
Datenstrukturen um Sound dynamisch zu verwalten -> Octrees – worst- case Wenn man Datensturktur wählt muss man trotzdem abstrahieren Jedes Detail abbilden zu wollen kann sehr fatal werden Vor allem auf der Grundlage, dass für jedes Detail 8 Subdivisions gebildet werden müssen D.h. um eventuell einen kleinen Metallbeschlag auf einer Wand zu simulieren müssen 4 weitere Subdivisions gebildet werden Der Algorithmus wird uneffizient

34 Reproduktion von Raumklang
Datenstrukturen um Sound dynamisch zu verwalten -> Octrees – Abstraktion Abstraktion ist notwendig, um Effizienz zu bewahren Weiter Optimierung aus der Verknüpfung von Grid und Octree -> Areal erstmal durch Octree differenzieren und dann einzelne Grids bilden Ebenfalls die Überprüfungsrate per Frames senken- teils weniger relevant als bei Grafik Audio frame rate

35 Reproduktion von Raumklang
Automatisierte Definition von spezifischen Umgebungsarealen Kriterien A. Größe des Raumes => durch Berechnung innerhalb der Bounding Box B. Materialität des Raumes => durch Linked Data der jeweiligen Polygone C. Geometrie des Raumes => durch raytracing von den Soundquellen aus Größe der Boundingbox als Grundlage der Größe des Raumes Materialinformationen sind als Linked Data mit den Polygonen verknüpft Geometrie der Räume erschließt sich durch raytracing von den Soundquellen aus. Die Ergebnisses des Raytrcing werden mit statistischen Daten verglichen und demnach Klassifikationen vorgenommen. Strahlen jeweils gleich lang -> quadratischer Raum, Strahlen jeweils kurz und jeweils lang (mit gleichen Größen) – Korridor, Strahlen mit verschiedenen Größen felsige/ unebene Oberfläche

36 Reproduktion von Raumklang
Berechnung von Hindernissen und Absorptionsfaktoren -> Normalerweise wäre vollständige Berechnungen für die Pfade der Schallwellen nötig -> Viel zu hoher Rechenaufwand bei der Menge der Schallwellen und der aktiven Bewegung des Listeners Was auch noch in diesen Bereich der automatischen Raumerfassung gehört ist die Berechnung von Hindernissen und Absorptionsfaktoren

37 Reproduktion von Raumklang
Berechnung von Hindernissen und Absorptionsfaktoren -> Jeweiligen Hindernissen Absorptionsfaktor hinzufügen Jedem Modell bzw. Hindernisses einen spezifischen Absorptionsfaktor zuweisen Die einfache, und oft praktizierte, Variante ist dann einfach nur den Direct Path zu nehmen und die jeweiligen Faktoren zu addieren und mit dem Sound zu verrechnen Wird dahingehend schwierig, wenn es andere Pfade gibt, die weniger Absorption besitzen Zudem dynamische Veränderung nur mit getriggerten Skripten möglich Daher Zwischenlösung mit Wegfindungsalgorithmus mit Absorptionsrate gekoppelt mit Weglänge – weil man zurückerinnern, je öfter reflektion desto mehr Absorption und ebenfalls Lautstärkenverlust Zudem automatisierte Abtastung sollte Elemente für Türen und Fenster erfassen, um spezifische Werte für Öffnen und Schließen zu definieren

38 Reproduktion von Raumklang
Automatisierte Definition von spezifischen Umgebungsarealen -> Kosten <-> Nutzen Faktor -> Zeitaufwand um Algorithmus zu entwickeln vs. Leveldesigner -> Fähigkeiten der Klassifikation des Algorithmus vs. Manuelle Klassifikation -> Rechenaufwand, um Räume zu erfassen und einzuordnen -> Rechenaufwand für Pfadberechnung bei Hindernissen vs. Absorptionsfaktoren Größe der Boundingbox als Grundlage der Größe des Raumes Materialinformationen sind als Linked Data mit den Polygonen verknüpft Geometrie der Räume erschließt sich durch raytracing von den Soundquellen aus. Die Ergebnisses des Raytrcing werden mit statistischen Daten verglichen und demnach Klassifikationen vorgenommen. Strahlen jeweils gleich lang -> quadratischer Raum, Strahlen jeweils kurz und jeweils lang (mit gleichen Größen) – Korridor, Strahlen mit verschiedenen Größen felsige/ unebene Oberfläche

39 Reproduktion von Raumklang
Automatisierte Definition von spezifischen Umgebungsarealen -> Möglichkeiten der Komplexität: - dynamisch abgetasteter Raum ist nicht mehr auf Trigger- Skripte angewiesen - Spieler erhält Freiheit in Aktionen, da die KI nicht auf Trigger, sondern realistischen Raumklang reagiert Anknüpfungspunkte – Parallelisierung der Berechnung von Wegfindung – über mehrere Rechner hinweg – hätte was von Cloúd- Gaming und würde vom einfachen Client-Game wegführen -> Übertragung der Daten eben über ein Protokoll-> Frage in Echtzeit?!? -> Agenten reagieren auf der Grundlage der Simulation von realistischem Raumklanges

40 Habt Ihr noch Fragen!?!

41 VIELEN DANK FÜR EURE AUFMERKSAMKEIT!!!

42 Literaturangaben McCuskey, Mason: Beginning Game Audio Programming. Boston 2003. Boer, James: Beginning Game Audio Programming. Boston Marks, Aaron: The Complete Guide to Game Audio: For Composers, Musicians, Sound Designers, and Game Developers. Berkeley 2002.


Herunterladen ppt "Advanced 3D Sound- Techniques"

Ähnliche Präsentationen


Google-Anzeigen