Spickzettel Animationen in LS3-Dateien: Unterschied zwischen den Versionen
(Die Seite wurde neu angelegt: „== Rotation/Position der Verknüpfung und der Verknüpfungs-Animationen == Wenn sowohl bei der Verknüpfung der Datei (Tag <Verknuepfte>) als auch bei einer z…“) |
(Ansteuerung der Signalanimationen) |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 10: | Zeile 10: | ||
wobei die Reihenfolge der von R<sub>V</sub> und R<sub>A</sub> egal ist. | wobei die Reihenfolge der von R<sub>V</sub> und R<sub>A</sub> 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 (<code><SignalFrame></code>-Knoten), werden die Animationen entsprechend den gesetzten Bits im Signalbild angesteuert. | |||
Beispiel: | |||
* Signalbild 13 = 01101<sub>2</sub> | |||
* In der LS3-Datei des ersten SignalFrames sind 2 <code><Animation></code>-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 <code><Animation></code>-Knoten enthalten. Da das dritte Bit von rechts gesetzt ist, wird die LS3-Datei angezeigt. | |||
* In der LS3-Datei des dritten SignalFrames sind 2 <code><Animation></code>-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. |
Aktuelle Version vom 24. April 2021, 10:53 Uhr
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.