Spickzettel Animationen in LS3-Dateien

Aus ZusiWiki
Zur Navigation springen Zur Suche springen
Die druckbare Version wird nicht mehr unterstützt und kann Darstellungsfehler aufweisen. Bitte aktualisiere deine Browser-Lesezeichen und verwende stattdessen die Standard-Druckfunktion des Browsers.

Rotation/Position der Verknüpfung und der Verknüpfungs-Animationen

Wenn sowohl bei der Verknüpfung der Datei (Tag <Verknuepfte>) als auch bei einer zugehörigen Verknüfungs-Animation Rotation und Position angegeben sind, so gilt:

  • Die beiden Rotationen werden nacheinander ausgeführt.
  • Die Verschiebung im Tag <Verknuepfte> bezieht sich wie gehabt auf das Koordinatensystem der übergeordneten LS3-Datei.
  • Die Verschiebung im Animations-Keyframe bezieht sich auf das Koordinatensystem, wie es durch die Rotation im <Verknuepfte>-Tag gedreht wurde.

Sind TV und TA die Verschiebematrizen und RV und RA die Rotationsmatrizen von Verknüpfung bzw. Animations-Keyframe, so berechnet sich die Transformationsmatrix (ohne Skalierung) also als:

(RV * TA * RV-1) * TV * RA * RV

wobei die Reihenfolge der von RV und RA egal ist.

Ansteuerung der Fahrzeuganimationen im Simulator und im 3D-Editor

Im Simulator werden die fahrzeugspezifischen Animationen (Gleiskrümmung, Neigetechnik etc.) ausschließlich über ihren Animationstyp (XML-Attribut AniID) angesteuert. Der Name der Animation ist egal.

Die Funktion zum Testen von Animationen im 3D-Editor hingegen wertet ausschließlich den in der Dropdown-Liste angegebenen Animationsnamen (XML-Attribut AniBeschreibung) aus und ignoriert den Animationstyp.

Wenn eine Animation beim Testen im 3D-Editor funktioniert, ist das also noch keine Garantie fuer die korrekte Funktion im Simulator -- und umgekehrt.

Ansteuerung der Signalanimationen

In der LS3-Datei, die direkt im Signal verknüpft ist (<SignalFrame>-Knoten), werden die Animationen entsprechend den gesetzten Bits im Signalbild angesteuert.

Beispiel:

  • Signalbild 13 = 011012
  • In der LS3-Datei des ersten SignalFrames sind 2 <Animation>-Knoten enthalten. Die erste Animation wird angesteuert (da das erste Bit von rechts gesetzt ist), die zweite nicht (da das zweite Bit von rechts nicht gesetzt ist).
  • In der LS3-Datei des zweiten SignalFrames sind keine <Animation>-Knoten enthalten. Da das dritte Bit von rechts gesetzt ist, wird die LS3-Datei angezeigt.
  • In der LS3-Datei des dritten SignalFrames sind 2 <Animation>-Knoten enthalten. Die erste Animation wird angesteuert (da das vierte Bit von rechts gesetzt ist), die zweite nicht (da das fünfte Bit von rechts nicht gesetzt ist).

In allen untergeordneten LS3-Dateien werden die Animationen über den Animationsnamen (XML-Attribut AniBeschreibung) der in der obersten LS3-Datei aktivierten Animationen angesteuert.