Jump to content
Unity Insider Forum

Playermodell -> Animator -> C# Probleme bei Bewegung?


ozzm3

Recommended Posts

Meine lieben, ich werkel schon einige Zeit an meinem Playermodell / Animation und Bewegung. Um es kurz zusammen zu fassen, ich möchte gern mein 3DModell mit den Tasten A,S,W,D bewegen. Ansich geht es, allerdings scheint das Modell auf der Stelle zu laufen? Im Video (Anleitung) habe ich alle Schritte genau so abgearbeitet - dort läuft es - bei mir leider nicht.

Hier das Video: 

https://www.youtube.com/watch?v=U0dlWhB_e0E&t=232s

Bei mir sieht das so aus:

https://www.youtube.com/watch?v=Zu91jc2us9k

Ich bin nun maximal verwirrt 😅 Riggibody & Box Colider sind vorhanden.

Die Animation sind ebenfalls hinterlegt.

Das Skript für die Bewegung: sehr einfach gehalten. 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class move : MonoBehaviour
{
    public Animator animator;
    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        animator.SetFloat("vertical", Input.GetAxis("Vertical"));
        animator.SetFloat("horizontal", Input.GetAxis("Horizo"));
    }
}

Habt ihr vielleicht einen Tipp oder Idee? Danke euch :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Grüß dich...

...da kann ich nur sagen "Boah". Schwer zu sagen, wo dein Problem liegt. Ich rate jetzt mal wild rum. Solltest du mal Langeweile haben, richte dir doch mal Git ein. Damit kannst du dann dein  Projekt teilen und jeder kann es sich ansehen. Das macht es viel einfacher, setzt aber voraus, dass du dein Projekt halt, teilst. Das will nicht unbedingt jeder, aber in so einer Situation wäre es einfacher. Vor allem bei Dingen, die sich nicht nur auf Scripte beziehen ist das sinnvoll. Vielleicht hast du irgendwo einen Hacken vergessen, dich bei einem Parameter verschieben etc. 

 

04:59 - eine Kondition für den Übergang gesetzt? Wechselt deine Animation von selbst von Default (orange) auf den Blendtree (grau)? Stimmt der Wert des Parameters?

06:47 - Threshold richtig eingestellt?

Script - 

animator.SetFloat("horizontal", Input.GetAxis("Horizo"));

"Horizontal" muss das heißen. Außer du hast deine Achsen umbenannt.

 

Du kannst dir auch mal das Animations-Fenster auf einen zweiten Bildschirm legen und es beim Spielstart beobachten. Da kannst du schon einmal ablesen wann und wie das System in die nächsten Animation geht. Läuft der blaue Balken mehrmals durch, läuft er überhaupt einmal gesamt durch oder wechselt die Animation bevor der blaue Balken durchgelaufen ist?. Etc.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich habe nur mal kurz in dein Video rein geschaut, weiss jetzt also nicht, ob du die Bewegung über die Animation haben willst, oder ob das Kerlchen eben auf der Stelle laufen soll und du die Bewegung dann per Script selber erstelen willst. Z.B. mit Rigidbody.AddForce.
Es gibt da jetzt viele Dinge die sein könnten. Aber! Ich hatte vor vielen Jahren mal eine Tutorialreihe zur Animation mit Mecanim und das Einbinden von MoCap Animationen gemacht, als das noch ganz neu war.
Heute ist immer noch vieles ganz genauso wie damals. Gerade der Part, wo man die Animationstakes anpasst, damit er läuft und dabei auch in der Spur bleibt, könnte dich interessieren. Ich hänge dir mal hier den Part 2 der Reihe an. Da erzähle ich einiges darüber.
Wie gesagt ist lange her und einige Dinge sind in Unity jetzt etwas anders oder an anderer Stelle zu finden.

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Großes danke an euch.

@BiboThema Git werde ich angehen. Ich habe keine Grund, das Projekt nicht zu teilen :) Daher werde ich das im laufe des Tages angehen. Das ist ein guter Hinweis. Bezüglich deiner weitern Fragen werde ich später mal ins Projekt schauen. Schonmal vielen Dank für deine Mühe!

@malzbie die Bewegung soll über den Animator laufen, die Idee sollten einfach sein, aber ich merke schon, es ist noch ein weiter weg. Danke für dein Video, das werde ich mir ansehen. 

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich habe das Level (sprich Thema Bewegung) neu gemacht. Noch habe ich das Problem, wie oben. Sprich er läuft auf der Stelle. Die Einstellungen sind (wie im Video) soweit richtig. Ich werde aber nochmal genauer bzw. Google bemühen.

C# Code folgt noch (ich arbeite heute verteilt über den Tag an dem Projekt)

GIT habe ich jetzt auch: 

GitHub - ozzm3/JW: Meine GameIdee

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Kleines Update. Mit dem neuem Testmodell läuft es soweit gut. Ich teste zur Zeit das Thema Laufen - Rennen. Das Modell bewegt sich. Mein John Wick Modell muss wohl noch angepasst werden. Dennoch kann ich nun weiter mit dem Thema Animation machen. Links / Rechtslaufen wird demnächst hinzugefügt - sofern ich das richtig mache. Aber zur Zeit läuft das gut. Aber ich muss noch viel lernen. Aber das ist ja der Weg. Ich habe leider meist nur am Wochenende Zeit aber da Versuche ich soviel zu schaffen wie möglich. 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Lädt...
×
×
  • Neu erstellen...