Suche gutes Tutorial für Rotation im Stand und für Kopfbewegungen

  • Dj EKI schrieb:

    Jetzt weis ich warum dein charakter dieses use controller yaw benutzen muss. Du kannst das auch weglassen und aktivierst einfach Orient Rotation to Movement im CharacterMovement. Deine Version ist sowieso lag anfällig.
    Ich schau die Tage mal nach wegen dem OrientRotationToMovement, das UseControllerYaw habe ich bisher immer gebraucht, damit der Character sich überhaupt in der fixierten Richtung drehen kann.

    Was meinst du mit lag anfällig und wie kann ich das performanter gestalten?

    Die Bewegungen müssen die höchste Priorität im Netzwerk haben, erst dann der Rest.
  • lag anfällig ist so erklärt: Der Client sendet an den Server, der Server sendet zurück und dann kann der Client die Informationen bekommen. Dieser Weg kann im LAN Modus 10ms benötigen, oder im Internet ca 40ms.
    Du müsstest also einen anderen Weg nutzen: Der Client sendet an den Server, führt aber gleichzeitig die gleiche Berechnung durch. Sind die Daten wichtig, damit man nicht cheaten darf, holst du dir zur sicherheit nochmal das vom Server ab. Durch das sofortige ausführen am Client, ist kein laggen möglich.
  • Dj EKI schrieb:

    Jetzt weis ich warum dein charakter dieses use controller yaw benutzen muss. Du kannst das auch weglassen und aktivierst einfach Orient Rotation to Movement im CharacterMovement. Deine Version ist sowieso lag anfällig.

    Das “OrientRotationToMovement“ war die ganze Zeit schon aktiviert.
    Wenn ich dafür das “UseControllerYaw“ entferne, sieht es zwar besser aus und das ruckeln ist komplett verschwunden *freu*, aber die Steuerung des Characters ist damit unnötig schwer und verwirrend.

    Das liegt unter anderem daran, dass wenn ich etwas seitlich mit dem Kopf schaue und dann vorwärts gehe, geht der character schräg vorwärts und das ist eine extrem merkwürdige Bewegung und Steuerung.

    Gehe ich dabei zurück, läuft der Character rückwärts-vorwärts zurück... also komplett falsch.
  • Dj EKI schrieb:

    ja, das gilt bei dir selber anzupassen. Wenn du genaue Drehungen haben möchtest, dann entferne OrientRotationToMovement und scripte deine Drehung selber. Alles kann Epic auch nicht so einfach zur Verfügung stellen nach bestimmten wünschen.
    Vielen Dank für deine Hilfe, ich konnte jetzt alle Probleme lösen!

    Bei InputAxisMoveForward habe ich einen Branch gesetzt, welcher überprüft ob der Wert -1 ist.
    Wenn true -> UseControllerRotationYaw 1 UND dann OrientRotationToMovement 0.
    Wenn false -> UseControllerRotationYaw 0 UND OrientRotationToMovement 1.

    Also wenn man rückwärts geht (true / -1) wird die Kamera nach vorne fixiert und man läuft auch wirklich zurück (ohne Animationsfehler). Das OrientRotationToMovement auf 0 eliminiert automatisch die Differenz zwischen der Kopfration (Links/Rechts) und man kann nun rückwärts laufen, ohne das es zu diesem seitlichen Ruckeln kommt :)
    Weil die Kamera bzw. die Koprotation vorher das Problem hatte, nicht zu wissen ob die Kamera (Kopfroation) links oder rechts ist, deshalb hat das auch ständig hin und her geruckelt.

    Geht man nicht rückwärts (false / 0 oder 1), läuft alles korrekt ab.



    Jetzt brauche ich nur noch eine Animation für das Drehen im Stand (Animationen sind dafür vorhanden).
    Aktuell ist es leider so, dass der Character sich wie auf einer Eisfläche im Stand dreht und das sieht nicht sehr schön aus.
Unreal®, Unreal Engine, the circle-U logo and the Powered by Unreal Engine logo are trademarks or registered trademarks of Epic Games, Inc. in the United States and elsewhere.