- HOME
- X-PLANE
- LINKS
- Mein Cockpit
- OBJEKTE
- SZENERIEN
- Szenerien-Liste
- Szenerien - Karte
- Modellflugplätze
- HELI - Landeplätze
- 4077 M.A.S.H.
- AAT Ranshofen
- EI01 Fastnet Rock
- F1 Spielberg Racetrack Heliport
- KH Dornbirn
- KH Linz
- KH Rudolfstiftung Wien
- KH Weisser Hof
- LKH-Hainburg
- LKH Hartberg
- LKH Rottenmann
- LKH Schladming
- LKH Wagna
- LOAC KH Kittsee
- LOAE KH Eisenstadt
- LOAF KH Baden
- LOAH KH Horn
- LOAI LKH Wr. Neustadt
- LOAJ Aspern Öamtc
- LOAK KH Krems
- LOAL Pöchlarn-Wörth
- LOAM Wien Meidling
- LOAO KH Oberpullendorf
- LOAY Kilb Heliport
- LOAZ KH Zwettl
- LOBA AKH Wien
- LOBI KH Mödling
- LODL Business Center Leitner
- LODO Oberwart OEAMTC
- LOGR KH Oberwart
- LOIB Hörlahof
- LOIC St. Anton a. Arlberg
- LOID KH Kufstein
- LOIE BKH Reutte
- LOIF LKH Feldkirch
- LOIG Wucher Ludesch
- LOIL Zams Christophorus 5
- LOIM Heliport Kufstein
- LOIO Sölden
- LOIP Ischgl Idalpe
- LOIU LKH Innsbruch HeliPort
- LOIW Waidring
- LOJC Christophorus 4 Reith
- LOJI Medalp Imst
- LOJK Kaltenbach
- LOJN Christophorus 8 Nenzing
- LOJP Karres
- LOJT Hintertux
- LOJW Wucher Gallus 1 Lech/Zuers
- LOLY ÖAMTC Christophorus 15 Ybbsitz
- LOGA LKH Bad Radkersburg
- LOJH Martin 8 Hochgurgl
- LOMP Patergassen
- LOPK LH Phyrn-Eisenwurzen Kirchdorf
- LOMW LKH Wolfsberg
- LOSJ St. Johann im Pongau
- LOWH Hanusch Krankenhaus
- Tauernklinikum Zell am See
- LOXH Hochfilzen
- LOXS Schwarzenbergkaserne
- UKH Lorenz Böhler
- UKH Meidling
- AT02 Scalaria airchallenge
- LAA-Ungerndorf
- LEGO Mistelbach
- LOAA Ottenschlag
- LOAB Dobersberg
- LOAD Völtendorf
- LOAG / LOBK Krems-Langenlois
- LOAN / LOAW Wr. Neustadt Ost
- LOAR Altlichtenwarth
- LOAS Spitzerberg
- LOAT Trausdorf
- LOAU Stockerau
- LOAV Vöslau
- LOGF Fürstenfeld
- LOGG Punitz
- LOGI Trieben
- LOGK Kapfenberg
- LOGL Lanzen-Turnau
- LOGM Mariazell
- LOGO Niederöblarn
- LOGP Pinkafeld
- LOGT Leoben Timmersdorf
- LOGW Unterfladnitz
- LOIH Hohenems
- LOIJ St. Johann
- LOIK Kufstein
- LOIR Reutte Höfen
- LOKF Feldkirchen
- LOKG Glainach
- LOKH Friesach
- LOKL Lienz / Nikolsdorf
- LOKM Mayerhofen
- LOKN Nötsch
- LOKR Sankt Donat
- LOKW Wolfsberg
- LOLC Scharnstein
- LOLE Eferding
- LOLF Freistadt
- LOLG Sankt Georgen
- LOLH HB-Hofkirchen
- LOLK Ried Kirchheim
- LOLO Linz Ost
- LOLS / LOLD Schärding-Suben
- LOLM Micheldorf
- LOLT Seitenstetten
- LOLU Gmunden
- LOLW Wels
- Windparks Österreich
- LOIQ Schenkair Feldkirch
- LOSM Mauterndorf
- LOWF Fischamend
- LOWG Graz Thalerhof
- LOWI Innsbruck Kranebitten
- LOWK/LOMU Klagenfurt
- LOWL Blue Danube Airport Linz
- LOWS W.A.Mozart
- LOWW Wien Schwechat
- LOWZ Zell am See
- LOXA Aigen
- LOXN Wr. Neustadt West
- LOXT Tulln
- LOXZ Zeltweg
- Leopoldsdorf im Marchfeld
- Aircrafts
- OE-HANGAR
- Tips und Tricks
- Addons für Österreich
- Allgemeines zur X-Plane Welt
- Europäische Strassen
- Kalkulation Light-Spill
- LUA-Scripts
- Modifikation von X-Plane mit JSGME
- PCL (Pilot controlled lights)
- Weniger Schnee auf der Runway
- Europäische Autobahn Beleuchtung
- Flugzeug-Bemalungen (Liveries) anpassen
- Tutorials
- Wir bauen eine Szenerie I
- Wir bauen eine Szenerie II
- Objekte für X-Plane I
- Objekte für X-Plane II
- Objekte für X-Plane III
- Objekte für X-Plane IV
- Objekte für X-Plane V
- Objekte für X-Plane VI
- Animationen bei Objekten
- Objekte in X-Plane positionieren (WED)
- Die Anwendung von Fassaden (.fac)
- Helipads als Markierung
- Rollmarkierungen
- Strassen mit Verkehr selbst erstellen
- Wir bauen eine Linie (.lin)
- Wir bauen einen Wald (.for)
- Wir bauen uns Bäume (.obj)
- Work in progress
- LIVERIES
- A319-100 OE-LDG
- A320-232 (Paul Glanville)
- A320-232 (QPAC)
- A321 (riviere) Austrian OE-LBF
- AS 350 B3+
- Airbus A330-200 (JAR-Design)
- Aquila A210 (Picus-X)
- BK117 (NDArt)
- Boeing 737-300 (IXEG)
- Boeing 737-8 ZIBO
- Boeing 737-800 (EADT)
- Boeing 747-8i Adv. (SSG)
- Boeing 757-200PW+RR (FF)
- Boeing 757-300RR (Flight Factor)
- Boeing 767 (Flight Factor)
- Boeing 777-200ER (Ramzzess)
- Boeing 787
- C172SP
- CRJ-200 (JROLLON)
- CRJ200
- Dash 8 Q400
- Diamond Aircrafts
- E-190 (SSG)
- EC-135V3 (Rotorsim.de)
- MD80 (Rotate)
- MD902 (Dawson Designs)
- Pilatus PC6
- RJ100
- Vickers Viscount
- Missionen / Flugpläne
Animationen bei Objekten
Verfasst von oe3gsu am Mo, 2014-01-13 09:49
Jetzt kommt Bewegung rein
Nachdem unser Objekt jetzt fertig ist, wäre es doch schön, wenn sich der Radar-Reflektor drehen würde, sich das Hangartor öffnen ließe, usw. Dazu bietet uns X-Plane eine Möglichkeit: die Animation.
Für jede Animation brauchen wir eine X-Plane"Dataref", die diese Animation steuert. Die Liste der Datarefs findet man im Verzeichnis "X-Plane/Ressources/plugins" oder auf http://www.xsquawkbox.net/xpsdk/docs/DataRefs.html
Rotierende Objekte
Damit ein Objekt sich dreht, benötigen wir eine Dataref, die eine kontinuierliche Veränderung zwischen zwei Werten bringt und beim Erreichen des Höchstwertes beim niedrigsten Wert wieder beginnt. Eine dafür recht praktische Dataref ist da "sim/graphics/animation/airport_beacon_rotation". Dazu verrät uns die o.a. WEB-Site:
airport_beacon_rotation | float | 850+ | no | degrees | angle this beacon is rotating (0-360) |
Dataref-Name | Type | gilt ab Sim-Version | beschreibbar? | Einheit | Anmerkung (hier Wertebereich) |
Diese Variable bringt uns also einen Wert, der bei 0° beginnt und bis 360° läuft und dann wieder bei 0 beginnt. Perfekt für unser Radar.
Als Beispiel, wie wir einen Radar-Reflektor zum Rotieren bringen, verwende ich die beiden Radars in LOWW. Auf dem rechts stehenden Bild sieht man die fertigen Türme und die beiden Radar-Reflektoren. Der rechte er beiden ist dabei mit einem blauen Rahmen umgeben. Wozu das?
Wir müssen X-Plane sagen, welche Teile zusammengehören und gemeinsam rotieren sollen. Dazu markeiren wir alle Teile, die zum Reflektor gehören (Flächen UND Kanten), Klicken mit der rechten Maustaste drauf und wählen "Gruppieren" aus dem Kontextmenu.
Jetzt weiß X-Plane, dass diese Teile zusammengehören. Jetzt Klicken wir diese Gruppe noch einmal mit der rechten Maustaste an und wählen "X-Plane / Animation" aus dem Kontext-Menu. Jetzt öffnet sich das links abgebildete Fenster.
In diesem werden jetzt alle Animations-spezifischen Parameter definiert. In der ersten Zeile teilen wir X-Plane mit, an welche Dataref unsere Animationen gebunden werden soll. Das Feld daneben, dient zur Adressierung eines Werte aus einem Array, falls unsere Dataref dieses Datenformat hat (siehe später).
Darunter sehen wir zwei Bereiche, die mit "Keyframe #0" und "Keyframe #1" bezeichnet sind. Was ist nun ein "Keyframe"?
X-Plane nimmt uns viel Arbeit ab. Wir müssen nur zwei Positionen unserer "Gruppe" bzw. "Komponente" definieren und den Rest berechnet X-Plane selbst.
Jetzt haben wir nur ein Problem, wenn wir X-Plane die Position für 0° und die für 360° angeben, die sind nämlich gleich! Wir nutzen da einen Trick. Wir geben die Postion für 0° an und als zweiten Keyframe die Position für 90°. Daraus errechnet X-Plane die gesamte Drehung.
Anmerkung: Damit sich die beiden Reflektoren nicht parallel drehen, habe ich die eine um 90° versetzt. Daher sind hier die Werte für 90° und 180° eingesetzt.
Die jeweils zwei Felder am linken Rand (+) und (-) dienen dem Hinzufügen und Löschen von Positionen bzw. Keyframes.
Rechts von den Eingabefeldern befinden sich zwei Buttons: "Festlegen" und "Anzeigen" Die werden wir jetzt nutzen, um X-Plane die Position unseres Reflektors bei den beiden eingegebenen Werten mitzuteilen.
Dazu können wir gleich einmal beim "Keyframe #0" auf Festlegen klicken. Damit weiß X-Plane mal, in welcher Position der Reflektor sein soll, wenn die Dataref 90° beträgt.
Um jetzt die 180° Position zu bekommen, müssen wir den Reflektor um 90° in die gewünschte Drehrichtung drehen. Dazu benutzen wir das "Drehen"-Werkzeug von Sketchup. Sobald wir dieses angewählt haben, wird der Cursor zu einem Winkelmesser, der je nachdem, wohin wir den Cursor halten, die Farben entsprechend den drei Achsen ändert. Wir wollen ja, dass sich unser Reflektor um die blaue (Hoch-) Achse dreht. Um jetzt nicht lange suchen zu müssen, wo der Winkelmesser an unserem Objekt blau wird, Drücken und Halten wir einfach "Shift" wenn der Winkelmesser blau ist und fixieren so die Drehachse. Jetzt können wir in Ruhe die Drehachse des Reflektors ansteuern. Dort einmal Klicken, den Cursor auf einer der anderen Achsen vom Mittelpunkt wegziehen und noch einmal Klicken. Wenn wir jetzt den Cursor auf die verbleibende Achse bewegen, dreht sich unser Objekt (der Reflektor) mit. Wenn nicht: "Esc" Drücken und nochmal von vorne.
Wenn die Position passt, ein drittes Mal Klicken. Jetzt auf den Button "Festlegen" bei "Keyframe #1" Klicken. Somit hat X-Plane (bzw. vorerst mal das Plugin von marginal) die beiden Positionen für die Keyframes und die dazugehörigen Werte.
Zur Sicherheit können wir die beiden Positionen durch Klick auf den Button "Anzeigen" oder durch Verwendung des Schiebereglers "Vorschau" überprüfen.
Jetzt können wir das o.a. Fenster "X-Plane Animation" schließen durch Klick auf das von Windows ja bekannte "X".
Wenn wir das gesamte Objekt jetzt speichern, Konvertieren und in unsere Szenerie setzen, können wir bewundern, wie sich der Radar-Reflektor dreht. Einfach, Oder?
Damit können wir jetzt auch Bewegung in Drehtüren usw. bringen. Aber wie schaut es mit einem Schiebe-Tor aus?
Lineare Bewegungen
Als Beispiel nehme ich hier eines der Tore, die ich für LOWS gebaut habe und die durch das AddOn "HangarOPS" von BluSideUpBob bedienbar sein sollen.
Dieses Addon liefert uns eine neue Dataref: "STMA/Scenery/HangarDoorPosition". Dabei handelt es sich um ein Array aus 100 Werten (entspricht 100 Animationen, die wir steuern könnten), leider sind außerhalb von Flugzeugen dieses Autors nur die ersten 10 (von 0 bis 9) verwendbar.
Wir müssen daher auch in das Feld neben der "DataRef" im Fenster "X-Plane Animation" einen Wert zwischen 0 und 9 eingeben. Mit diesem "Keycode" ist unsere Animation dann im Simulator steuerbar.
Und eigentlich ist jetzt alles ganz einfach: Keyframe #0 ist die o.a. geschlossene Position. Für den "Keyframe #1" verschieben wir das Tor mit dem "Verschieben"-Tool so weit, dass es ganz geöffnet ist und legen diese Position als "Keyframe #1" fest. Die Datarefs dieses AddOn bewegen sich zwischen 0.0 und 1.0. Daher geben wir diese beiden Werte auch bei den entsprechenden Keyframes ein. Kontrollieren, ob die beiden Positionen stimmen, abspeichern, konvertieren, in die Szenerie einbauen und das sich öffnende Tor bewundern.
War doch auch nicht schwer, oder?
Und jetzt noch ein Beispiel für den Bereich "Ausblenden / Zeigen":
Da oder nicht da, das ist hier die Frage!
Ich wollte immer schon ein Wind-Tee nachbauen (das ja an allen Plätzen installiert ist und die aktive Landepiste anzeigt), das auch wirklich die richtige Lage einnimmt. Leider bietet uns X-Plane keine Dataref für die aktive Piste. Nach mehreren Versuchen kam ich zu folgenden Lösung:(Danke an Daniel für die Hilfe)
Ich baue ein Tee, dass für beide (geht auch für mehrere Pisten, wie in LOWW) Richtungen den "Endbalken" hat. Je nach Windrichtung wird dann der eine oder andere Balken ausgeblendet.
Dazu verwende ich die Dataref "sim/weather/wind_direction_degt", die mir die Windrichtung in Grad angibt.
In die Felder bei "Ausblenden / Zeigen" kommen jetzt die Werte, wann ein Balken ein- bzw. auszublenden ist. Dieser wird jetzt nur angezeigt, wenn die Windrichtung zwischen 270° über 0° bis zu 90° beträgt, also Winde aus West über Nord bis Ost.
Der zweite Balken hat natürlich die umgekehrten Werte.
EInziges Problem dabei: Die Windrichtung im X-Plane variiert ein wenig. Daher kann es vorkommen, dass bei einem Wind aus West +/- ein paar Grad, die beiden Balken flackern. Aber damit kann ich leben.
Bei meinen animierten Fahnen verwende ich die selbe Dataref. Da schaut die o.a. Variation ja gut aus, denn die Fahnen bewegen sich leicht im Wind.
Wer möchte, kann jetzt noch andere Bewegungen ausprobieren, z.B.:
- Hangar-Kipptore, die sich wie ein Garagentor öffnen (um 90° nach hinten drehen und an die Oberkante der Öffnung schieben)
- Tore, die sich am Anfang und Ende der Bewegung langsamer bewegen (zusätzliche Keyframes)
- gekoppelte Bewegungen wie eine Heli-Plattform, die sich nach Öffnen des Tores aus dem Hangar heraus bewegt (Erste Hälfte der Dataref bewegt Tor, zweite Hälfte das Heli-Pad)
- Schranken, die sich je nach Tageszeit öffnen oder schließen (siehe die Szenerie LOAR)
- usw.
Ergänzung: Im Fenster "X-Plane Animation" gibt es noch einen "Loop"-Wert. Diesen verwenden wir, wenn wir eine Dataref nutzen, die sich quasi endlos bewegt. Sobald der Wert bei "Loop" erreicht ist, zieht X-Plane diesen von der Dataref ab und beginnt wieder bei 0. Das ist manchmal erforderliche, wenn keine Dataref, die sich entsprechend unseren Wünschen ändert.
Recht praktische Datarefs sind auch noch:
ping_pong_2 | float | 850+ | no | ratio | -1 to 1 |
sin_wave_2 | float | 850+ | no | ratio | -1 to 1 |
Falls sich jemand findet, der uns erklärt, wie dies mit anderen 3D-Editoren funktioniert, bitte bei mir oe3gsu@x-plane.at melden. Ich schreib dieses Tutorial gerne weiter!
Viel Spass mit den Animationen
Gerhard
Wenn Dir dieses Tutorial gefällt, freuen wir uns über Deine Spende: