Sounds-Tool
Über das Sounds-Tool, welches Bestandteil des Content-Tools ist, werden Sounddateien importiert.
1 Überblick
Über das Sounds-Tool werden Sounddateien (ausschließlich) im Wave-Format (*.wav) importiert und – zu Gruppen zusammengefasst – als Content-Elemente abgespeichert.
Diese Content-Elemente bzw. Gruppen werden als Soundquelle (engl.: Sound-Set) bezeichnet.
Anschließend werden die Soundquellen wie auch jeder andere Content in einen Container gepackt und nach LOTUS importiert. Im Object & Vehicle Tool kann dann die Soundquelle (auch ggf. mehrfach) verknüpft werden.
2 Sinnvolle Soundquellen-Struktur Ein Szenerieobjekt oder Fahrzeug kann über beliebig viele Soundquellen verfügen. Daher sollte im Vorfeld überlegt werden, welche Sounds zu Soundquellen zusammengefasst werden sollen.
Da die Sounds innerhalb einer Soundquelle über keine individuellen 3D-Koordinaten verfügt, sondern nur die Soundquelle selbst im Objekt räumlich platziert wird, sollten jeweils zusammengehörige Sounds, die auch räumlich zueinander gehören, in eine individuelle Soundquellen gelegt werden. Außerdem ist es natürlich sinnvoll, auch nur technisch zusammengehörige Sounds in eine Soundquelle zu packen.
3 Wo sollen die Soundquellen "hin"? Da die Soundquellen-Dateien (*.lsd) also sehr unabhängig von den restlichen Fahrzeugdateien sind, empfiehlt es sich dringend, diese in einem eigenen Ordner zu lagern, sodass sie dann auch in einen separaten Container gepackt werden.
Wichtig: Das Object- und Vehicle-Tool kann nur auf Soundquellen zugreifen, die bereits fertig in einen Container "verpackt" in einem der LOTUS-Content-Verzeichnisse liegen!
Das bedeutet, dass nach Arbeiten an einem Sound vor der Weiterarbeit am Fahrzeug/Objekt immer auf "Speichern und Packen" geklickt (alternativ [Strg] + [P] ) und das ContentTool neu gestartet werden muss!
4 Variablen-Mapping Damit Soundquellen auch für unterschiedliche Objekte verwendet werden können, gibt es das sogenannte Variablen-Mapping:
Die verschiedenen variablen Parameter der Soundquellen, so z.B. für die Lautstärke oder Abspielgeschwindigkeit werden mit sogenannten Mapping-IDs versehen; das sind Strings, die den jeweiligen Parameter identifizieren. Man könnte auch sagen: Eine ID ist eine "Stellvertreter-Variable", also nur eine Hülle. Im Object & Vehicle-Tool muss beim Einbau der Soundquelle nun jeder ID eine "echte" Variable zugeordnet werden.
Der Vorteil dieses Verfahrens ist nicht nur, dass unterschiedliche Objekte mit komplett unterschiedlichen Scripts dennoch die selbe Soundquelle verwenden können (sofern die nötigen Variablen zur Verfügung stehen), sondern dass auch ein und dasselbe Objekt eine bestimmte Soundquelle mehrmals nutzen kann - z.B. kann ein U-Bahnwagen mit bspw. 6 Türen ein einheitliches Tür-Sound-Set sechs mal einbinden und mit den jeweilig unterschiedlichen Tür-Variablen verknüpfen. Dies spart Arbeit und auch Ladezeit.
5 Sound-Parameter Jeder einzelne Sound wird mittels mehrerer Parameter konfiguriert und für seinen Einsatz in LOTUS vorbereitet.
5.1 Play-Mapping-ID Dieses Feld kann auch leer bleiben. Sofern aber eine Integer-Variable zugeordnet wird, steuert diese, ob der Sound abgespielt wird oder nicht. Das Script kann diese Variable auf 1 oder -1 setzen; nachdem die Variable von allen zugehörigen Sounds gelesen wurde, wird sie wieder auf 0 gesetzt.
Setzt das Script die Variable auf 1, dann wird der Sound gestartet. Handelt es sich nicht um einen loopenden Sound, dann wird der Sound - auch wenn er bereits lief - erneut von vorne gestartet
Setzt das Script die Variable auf -1, dann wird der Sound gestoppt, egal ob es sich um einen loopenden oder einen nicht-loopenden Sound handelt.
5.2 Master Volume Haupt-Lautstärke. Diese stellt die grundsätzliche Lautstärke des Sounds ein. 1 bedeutet, dass der Sound mit der ursprünglichen Lautstärke der Sound-Datei abgespielt wird.
5.3 Volume-Kurven Jeder Sound kann über eine, mehrere oder gar keine Volumen-Kurven verfügen. Jede Volumen-Kurve beeinflusst die Abspiel-Lautstärke des Sounds, je nachdem welchen Wert die der Volumen-Kurve zugeordnete Variable hat.
Die Berechnung erfolgt wie folgt:
Für jede Volumen-Kurve wird der Wert der zugeordneten Variable gelesen, als x-Koordinate in die Funktion eingesetzt und der y-Wert abgelesen und abgespeichert. Schließlich werden die so ermittelten Werte aller Volumen-Kurven miteinander multipliziert.
Verfügt der Sound über keine Volumen-Kurve, dann ist die Lautstärke stets konstant.
5.4 Volume-1-Entfernung Der Abstand von der Soundquelle in Metern, in der der Sound gerade noch mit originaler Lautstärke abgespielt werden soll. Entfernt sich der User weiter von der Soundquelle, dann verringert sich die Lautstärke kontinuierlich. Je größer dieser Wert ist, desto weiter ist der Sound noch hörbar.
5.5 Pitch-Variable und Pitch-Referenzwert Die Pitch-Variable beeinflusst die Abspielgeschwindigkeit, den sogenannten "Pitch" des Sounds.
Hat die Variable gerade den Referenz-Wert, dann wird der Sound normal abgespielt. Ist die Variable doppelt so hoch wie der Referenzwert, dann mit doppelter Geschwindigkeit. Oder anders: Die Abspielgeschwindigkeit ist der Wert der Variable geteilt durch den Referenzwert.
5.6 Looping Beeinflusst, was passieren soll, wenn der Sound komplett abgespielt wurde. Ist der Haken hier gesetzt, dann beginnt die Wiedergabe automatisch nahtlos wieder von vorne, andernfalls stoppt die Wiedergabe.
Außerdem verfügt der Sound je nach Einstellung auch über ein unterschiedliches Start-Verhalten: Handelt es sich um einen loopenden Sound, dann startet die Wiedergabe von einem zufälligen Punkt inmitten der Sound-Daten und das Setzen der Play-Variable auf 1, während der Sound noch abspielt, hat keine Auswirkung. Ansonsten startet die Wiedergabe immer von Anfang an, auch dann, wenn die Play-Variable auf 1 gesetzt wurde, während der Sound noch abgespielt wurde.
5.7 Volumen-Geschwindigkeit Hier kann bei Bedarf eine Trägheit für die Volumen-Steuerung eingebaut werden. Auf diese Weise wird erreicht, dass sich die Lautstärke des Sounds nicht sofort exakt (und somit ggf. auch schlagartig) auf die neuen Variablenwerte anpasst, sondern mit einer bestimmten Trägheit. Je höher die eingegebene Zahl, desto schneller erfolgt die Nachführung. Bei -1 (Standardwert) erfolgt dagegen eine direkte Nachführung ohne Trägheit.