Nicht eingeloggt
Registrieren

Mover mittels Matinee dauerhaft bewegen

Vorrausetzung für dieses Tutorial ist, dass man sich das "Matinee: Erstellen von animierten Film Sequenzen - Teil 1" durchgelsen hat und mit den Basisachen eines Mover im UED 3.0 vertraut ist.

Wie kann man einen Mover mittels Mantinee dauerhaft bewegen?

Dazu braucht man zu aller erst eine MantineeSzene.
Hierfür öffnet man den Mantinee Editor (am linken Bildschirmrand) und klickt auf "Add New Scene".
Nun ist es wichtig dieser neuen Szene einen aussagekräftigen Tag zu geben, in meinem Fall ist das MoverController.




Als nächstes setzt man einen Mover in seine Map um mit dem einstellen der Szene fortfahren zu können.
Ist das geschenen muss man unter "SceneManager" den "Affect" auf "AffectActor" stellen.
Dann wählt man den Mover aus, so dass er grün markiert ist und klickt in der Szene bei "AffectedActor" auf "Use".
Dadurch erhält die MantineeSzene den auftrag diesen Mover in seiner Flugbahn zu beeinflussen.



Um dies zu erreichen muss man nun einige "Interpolation Points und Actions" setzen, wobei man den "InterpolationPoint" der letzten "Action" auf den ersten legen muss, damit es nacher eine konstante Bewegung wird.
Ach und tut mir einen Gefallen: verwendet dafür den vorgefertigten Button und nicht wie im oben verlinkten Tut gesagt den ActorclassBrowser.
Gleubt mir, wenn ihr den Button auf dem Bild verwendet geht es deutlich schneller und es entstehen weniger Fehler.



Die Pfade setzte man am besten auf Bezier und moddeliert einen möglichst ruhigen Fluss der gesammten Szene.
Das schwierige hierbei ist den Mover mit einer konstanten Geschwindigkeit zu bewegen, da diese mittels der Zeitangabe der einzelnen "Actions" kontrolliert wird.
Hierbei ist mir keinerlei Trick, oder bessere Möglichkeit bekannt, als zu Schätzen.

Ist dies alles vollbracht muss man nur noch den SkriptedTrigger konfigurieren.

Hierfür benötigen wir 4 "Actions" bei dem AISkript, also klicken wir 4 mal auf "add".
Da SkriptedTrigger manchmal doch recht zickig sein können ist es besser, wenn wir als erstes einen "WaitForTimer" mit einer Sekunde setzen.
Das bewirkt, dass das Skript am Ende nicht 2 Aktionen ohne Zeitabstand ausführen muss, was wie gesagt zu komplikationen führen kann.
Als weitere Aktion setzen wir nun einen "TriggerEvent" ein und tragen bei "Event" den Tag der Szene ein, in meinem Beispiel also "MoverController".
Anschliessend benötigen wir einen 2. "WaitForTimer", bei dem wir 1s weniger eintragen, als unsere Szene lang ist.
Und zu guter Letzt kommt noch eine "GoToAction", deren "ActionNumber" wir auf 0 lassen, wodurch wir eine Schleife erhalten, die unseren Mover edes Mal aufs neue losschickt



Ist das alles getan wird unser Mover exakt eine Sekunde nachdem die Map geladen wurde losflitzen und dem Pfad folgen.
Möchte man nun noch, dass er alle Spieler in seinem Weg einfach zerquetscht muss man einfach in den "MoverProperties" unter "Mover" den "MoverEncorachType" auf "CrushWhenEncroach" stellen.