Jump to content
Unity Insider Forum

Problem mit Animator Fortbewegung


Thariel

Recommended Posts

Hi

Kenne mich mit dem Animator immer noch nicht richtig aus. Ärgere mich nun schon lange mit einem Problem herum und ersuche nun euren weisen Rat ;)

Habe im Asset Store ein Tier gekauft, das verschiedene Animationen besitzt. Der Animation Controller war schon fertig und ich konnte direkt loslegen. Das Tier hat eine Walk Animation für an Land und eine Swim Animation für Unterwasser. Ich benutze direkt die Möglichkeit "Apply Root Motion" zur Fortbewegung, da ich nicht noch extra einen Character Controller benutzen will.

Das Problem: Ich bringe es einfach nicht fertig, dass sich das Tier bei der "Swim" Animation Fortbewegt, wie bei der Walk Animation. Ich ging alle Einstellungen durch, hab alles Ausprobiert und miteinander Verglichen. 

1. Kann mir wer sagen, wo die Versteckte Einstellung ist, die bezweckt, dass sich ein Model Fortbewegt?

2. Wie ist es von der Performance her? Es werden etliche der Tiere in der Welt herum lungern. Besser mit Character Controller oder direkt mit "Apply Root Motion"?

Wünsche noch einen schönen Abend!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Die "Rootmotion" kannst du beim Importer des Assets (FBX) unter "Animations" einstellen. Hier kannst du die Rootmotion übernehmen oder eben nicht:
https://docs.unity3d.com/Manual/AnimationCurvesOnImportedClips.html
https://docs.unity3d.com/Manual/RootMotion.html

1)
Ich glaub wenn man "Bake into Pose" markiert, dann deaktiviert man die Bewegung. Nun kannst du noch zwischen Y (=Bewegung auf der Y Achse) oder XZ(=Bewegung auf der XZ-Plane) auswählen. Kann auch sein, daß die Animation gar keine Rootmotion hat (dann geht es damit gar nicht).
2)
Macht keinen Unterschied. Hier würde ich eher drauf achten, daß du die Animator Componente entsprechend eingestellst:
Culling Mode = "Cull Completely".
Wenn man allerdings eine realistisches Verhalten haben möchte, dann sollte man das Tier dann aber per Skript in die richtige Richtung schieben, wenn es nicht von der Kamera erfasst wird (sonst schläft das Tier immer ein wen die Kamera weg ist ^^). Zusätzlich kann man auch noch einmal wegen Culling Groups schauen, die können auch animierte Objekte deaktiveren, wenn sie nicht mehr im entsprechenden Bereich befinden. Noch mehr Performance holt man nur dann raus, wenn man den Unity Animator gar verwendet.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Unter Animations finde ich diese Option nicht:

no-animation.thumb.jpg.b448057de229668c4a74741b596cd4b0.jpg

Ich hab das so eingestellt. Eigentlich genau gleich wie bei der Walk Animation, dort funktioniert es nämlich. Heisst das, der Modeller/Animator hat da etwas ausserhalb von Unity falsch gemacht am Modell?

inspector.thumb.jpg.4f664f760828aea250ec0d342e0d01aa.jpg

Dann werde ich wohl ein Character Controller verwenden. Muss jetzt halt 2 Collider verwenden, weil das Tier eine länglicher Capsule Collider benötigt & ein Character Controller :(

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn der entsprechende Animationsclip eine Rootmotion hat, dann kannst du dies auch sehen, wenn man die Animation im unteren Fenster abspielt.
Hier ein Beispiel, die Lauf-Animation hat eine Rootmotion (in XZ) und wenn du unten auf "Play" drückst, dann läuft der Charakter nach vorn und bewegt sich dabei über den Boden (macht also Boden gut). Hat die Lauf-Animation keine Rootmotion (oder setzt man den Haken XZ bei "Bake into Pose") läuft der Charakter auf der Stelle.

nWIr0R8.png

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...