IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Unity Discussion :

probleme decalage personnage rotation


Sujet :

Unity

  1. #1
    Nouveau membre du Club
    Inscrit en
    Août 2013
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Août 2013
    Messages : 204
    Points : 29
    Points
    29
    Par défaut probleme decalage personnage rotation
    salut tout le monde

    j'ai un problème j'ai entrain d’écrire un script pour un personnage 3D sous Background 2D mai j'a un problème de décalage des direction et de rotation

    voila le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    public float Walk = 3 ;
     
     
    void Update () {
     
     
    		if (Input.GetKey(KeyCode.DownArrow)) {
     
    			transform.Translate (0, 0, Walk * Time.deltaTime);
                GetComponent<Transform>().eulerAngles = new Vector3(0, 0, 0);
     
     
     
     
            }
     
    		if (Input.GetKey(KeyCode.LeftArrow))
            {
                GetComponent<Transform>().eulerAngles = new Vector3(0, 90, 0);
                transform.Translate(0, 0, -Walk * Time.deltaTime);
     
     
     
            }
     
            if (Input.GetKey(KeyCode.RightArrow)) {
     
                GetComponent<Transform>().eulerAngles = new Vector3(0, -90, 0);
                transform.Translate (0, 0, -Walk * Time.deltaTime);
     
     
     
            }
     
     
            if (Input.GetKey(KeyCode.UpArrow)) {
     
    			transform.Translate (0, 0, Walk * Time.deltaTime);
                GetComponent<Transform>().eulerAngles = new Vector3(0, 180, 0);
     
     
    		}
     
    	}

    j'ai le problème que c'est deux condition

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    	if (Input.GetKey(KeyCode.LeftArrow))
            {
                GetComponent<Transform>().eulerAngles = new Vector3(0, 90, 0);
                transform.Translate(0, 0, -Walk * Time.deltaTime);
     
     
     
            }
     
            if (Input.GetKey(KeyCode.RightArrow)) {
     
                GetComponent<Transform>().eulerAngles = new Vector3(0, -90, 0);
                transform.Translate (0, 0, -Walk * Time.deltaTime);
     
     
     
            }

    j'essaye de reverser les valeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "-Walk * Time.deltaTime" "-90"
    mais sans résulta

    est ce qu'il y a une solution a ce problème ?

  2. #2
    Membre expérimenté Avatar de Tonton Nico
    Homme Profil pro
    Ingénieur
    Inscrit en
    Septembre 2017
    Messages
    398
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2017
    Messages : 398
    Points : 1 320
    Points
    1 320
    Par défaut
    Quel problème? énonce le en entier et en toute lettre
    TontonNico

    On me dit souvent que je ressemble à Einstein... mais plutôt à Frank que Albert

  3. #3
    Nouveau membre du Club
    Inscrit en
    Août 2013
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Août 2013
    Messages : 204
    Points : 29
    Points
    29
    Par défaut
    pas de problème j'explique a nouveaux

    j'ai le problème dans ces deux condition

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     if (Input.GetKey(KeyCode.LeftArrow))
            {
                GetComponent<Transform>().eulerAngles = new Vector3(0, 90, 0);
                transform.Translate(0, 0, -Walk * Time.deltaTime);
     
            }
     
            if (Input.GetKey(KeyCode.RightArrow)) {
     
                GetComponent<Transform>().eulerAngles = new Vector3(0, -90, 0);
                transform.Translate (0, 0, -Walk * Time.deltaTime);
             }
    je n'arrive pas a faire marcher mon personnage dans les bonne rotation si j’appuie sur la touche "(KeyCode.LeftArrow))" ou "(KeyCode.RightArrow))" le code qu'il ya a l’intérieur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GetComponent<Transform>().eulerAngles = new Vector3(0, -90, 0);
    ne respecte pas le sence de la rotation avec mes touche par exemple je fait faire marcher le personnage dans la droite et il tourne dans l’a gauche et parfois que je change les valeur de la variable il part a la droite et il tourne a gauche


    si je retire ce code "eulerAngles" et je laisse que cette lgine dans les condition
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     transform.Translate (0, 0, -Walk * Time.deltaTime);
    et je j'inverse la varriable "Walk" dans un scène d'une senne left right de n'ai pas le problème de direction mais mon personnage ne bénéficie pas de rotation dans le sence souhaiter par contre dans les condition up down ca marche très bien sans problème

    voila si t'a des question pour comprendre ce que j'ai poster n'hésite pas a les poser pour résoudre ce problème je vais vous les rependre .

  4. #4
    Membre expérimenté Avatar de Tonton Nico
    Homme Profil pro
    Ingénieur
    Inscrit en
    Septembre 2017
    Messages
    398
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2017
    Messages : 398
    Points : 1 320
    Points
    1 320
    Par défaut
    je viens de tester ton code sur un cube et ça à l'air de marcher sans souci

    Citation Envoyé par lyokoguerier Voir le message
    je n'arrive pas a faire marcher mon personnage dans les bonne rotation si j’appuie sur la touche "(KeyCode.LeftArrow))" ou "(KeyCode.RightArrow))" le code qu'il ya a l’intérieur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GetComponent<Transform>().eulerAngles = new Vector3(0, -90, 0);
    ne respecte pas le sence de la rotation avec mes touche par exemple je fait faire marcher le personnage dans la droite et il tourne dans l’a gauche et parfois que je change les valeur de la variable il part a la droite et il tourne a gauche
    .
    La coordination entre tes animations, ton 3D et ton code on ne peut pas trop t'aider, c'est toi qui donne l'effet que tu veux
    Après si de base quand tu vas à droite ton personnage est à gauche et inversement, il suffit d'échanger tes lignes de code et et il ira dans le bon sens nan?
    TontonNico

    On me dit souvent que je ressemble à Einstein... mais plutôt à Frank que Albert

  5. #5
    Nouveau membre du Club
    Inscrit en
    Août 2013
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Août 2013
    Messages : 204
    Points : 29
    Points
    29
    Par défaut
    je vous remercie pour ton aide

    oue ca marche pour les direction pour mes touche

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    new Vector3(0, -90, 0);
    Donc ca c'est régler

    pour les sence de rotation exactement j'utilise des animation pour le personnage sous Animator voila ce que ca ressemble dans le code pour chaque condition

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     anim.Play ("ANH_MAIN_F0_FRJ_RUN");
    j'ai essayer également l'autre syntax

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    anim.SetTrigger("Courrir");
    et j'ai remarque que ca pas résolut le problème j'ai pas essayer les 2 autre syntax si c'est le cas dite le moi

    est ce que vous avez une solution a ce problème ?

  6. #6
    Membre expérimenté Avatar de Tonton Nico
    Homme Profil pro
    Ingénieur
    Inscrit en
    Septembre 2017
    Messages
    398
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2017
    Messages : 398
    Points : 1 320
    Points
    1 320
    Par défaut
    Citation Envoyé par lyokoguerier Voir le message
    oue ca marche pour les direction pour mes touche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    new Vector3(0, -90, 0);
    Donc ca c'est régler

    pour les sence de rotation exactement j'utilise des animation pour le personnage sous Animator voila ce que ça ressemble dans le code pour chaque condition
    Tu mélanges un peu tout je crois
    La direction est faite via le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      transform.Translate (0, 0, -Walk * Time.deltaTime);
    La rotation est bien faite via le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GetComponent<Transform>().eulerAngles = new Vector3(0, -90, 0);
    L'animation que tu vas à droit ou à gauche est la même ou alors c'est vraiment un cas particulier que tu nous proposes
    TontonNico

    On me dit souvent que je ressemble à Einstein... mais plutôt à Frank que Albert

  7. #7
    Nouveau membre du Club
    Inscrit en
    Août 2013
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Août 2013
    Messages : 204
    Points : 29
    Points
    29
    Par défaut
    merci pour l'aide

    je sais que la dirrection est sur cette ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      transform.Translate (0, 0, -Walk * Time.deltaTime);
    mais ce qui est nouveaux pour moi c'est que left right ca fonctionne si je met cette varriable "Walk" dans le sence inverse a l’intérieure dans ces deux condition ,(ce que je savais en prog orienter Unity3D il faut inverser les axe des varriable ou des valeur pour ca fonctionne )


    est ce que t'a une idée pour mes anim pourquoi il y ce bug de rotation ? est ce que je doit passer par le compenent Animation legacy ? si c'est le cas dite le moi , a savoirs ces anim ont était ripper d'un jeuxvideo ?

    s'il vous plait c'est très important pour mon apprentissage a ce moteur de jeux ?

  8. #8
    Membre expérimenté Avatar de Tonton Nico
    Homme Profil pro
    Ingénieur
    Inscrit en
    Septembre 2017
    Messages
    398
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2017
    Messages : 398
    Points : 1 320
    Points
    1 320
    Par défaut
    bin je pense que dans tous les logiciels c'est la même chose, tu te déplaces dans un sens ou dans l'autre je vois pas en quoi cela te surprend

    Pour lancer une animation tu as tout ce qu'il faut sur google pour trouver comment faire je dirais

    Sinon une vidéo de ton souci pour illustrer ce qui ne vas pas serait cool
    TontonNico

    On me dit souvent que je ressemble à Einstein... mais plutôt à Frank que Albert

  9. #9
    Nouveau membre du Club
    Inscrit en
    Août 2013
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Août 2013
    Messages : 204
    Points : 29
    Points
    29
    Par défaut
    en tout cas je vous remercie pour ta franchise

    je vais donc refaire mes recherche

  10. #10
    Membre expérimenté Avatar de Tonton Nico
    Homme Profil pro
    Ingénieur
    Inscrit en
    Septembre 2017
    Messages
    398
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2017
    Messages : 398
    Points : 1 320
    Points
    1 320
    Par défaut
    une vidéo de ce que tu obtiens serait sympa quand même pour voir ton souci si tu pouvais
    TontonNico

    On me dit souvent que je ressemble à Einstein... mais plutôt à Frank que Albert

  11. #11
    Nouveau membre du Club
    Inscrit en
    Août 2013
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Août 2013
    Messages : 204
    Points : 29
    Points
    29
    Par défaut
    je sais déjà comment lancer des animation avec des touche

    j'ai essayer un peu la recherche j'ai pas trouver mon cas

    je préfère plutôt que tu me donne le mot "clef" pour trouver facilement pour le décalage de rotation pour corriger ce bug

  12. #12
    Membre expérimenté Avatar de Tonton Nico
    Homme Profil pro
    Ingénieur
    Inscrit en
    Septembre 2017
    Messages
    398
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2017
    Messages : 398
    Points : 1 320
    Points
    1 320
    Par défaut
    il n'y a aucune réponse à cette question, c'est à toi de bien faire tes animations/fonctions; surtout sans vidéo pour espérer voir un peu le souci cela n'avancera pas trop je pense
    TontonNico

    On me dit souvent que je ressemble à Einstein... mais plutôt à Frank que Albert

  13. #13
    Nouveau membre du Club
    Inscrit en
    Août 2013
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Août 2013
    Messages : 204
    Points : 29
    Points
    29
    Par défaut
    si il n'a pas de repense a cette question pourquoi tu dit que le problème vienne d'animation ?

  14. #14
    Membre expérimenté Avatar de Tonton Nico
    Homme Profil pro
    Ingénieur
    Inscrit en
    Septembre 2017
    Messages
    398
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2017
    Messages : 398
    Points : 1 320
    Points
    1 320
    Par défaut
    à ta question
    je préfère plutôt que tu me donne le mot "clef" pour trouver facilement pour le décalage de rotation pour corriger ce bug
    indépendamment tout tes codes ont l'air de fonctionner mais c'est ensemble que ça merde et la il faudrait voir ton animation, ton code en entier et tester avec toi

    Edit: je veux surtout voir par curiosité quand tu vas à droite/gauche comment ton personnage fait sa rotation et joue ton animation pour voir le résultat final, pas juste ton animation
    TontonNico

    On me dit souvent que je ressemble à Einstein... mais plutôt à Frank que Albert

  15. #15
    Nouveau membre du Club
    Inscrit en
    Août 2013
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Août 2013
    Messages : 204
    Points : 29
    Points
    29
    Par défaut
    il suffit juste de le demander

    je suis sous la version "Unity 2017.1.3p3"

    https://drive.google.com/open?id=1iJ...tnAaKyXBfErl4k

    si ma scène n'a pas marcher utilise plutôt les asset

    si t'a une idée aussi sur la construction des background 2D avec les models 3D ?

    j’espère que vous avez une solution ?

  16. #16
    Nouveau membre du Club
    Inscrit en
    Août 2013
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Août 2013
    Messages : 204
    Points : 29
    Points
    29
    Par défaut
    est ce que quelqu'un pourrait m’aidez a ce sujet ?

Discussions similaires

  1. [WD16] Champ planning - probleme decalage date
    Par Tancredi dans le forum WinDev
    Réponses: 4
    Dernier message: 28/06/2011, 20h14
  2. Problem Avec Java2D rotate() et translate()
    Par marshallMe dans le forum 2D
    Réponses: 2
    Dernier message: 06/08/2010, 17h31
  3. probleme dans la rotation
    Par monster-bab dans le forum OpenGL
    Réponses: 9
    Dernier message: 13/01/2009, 19h39
  4. probleme decalage sous IE
    Par orphen dans le forum Mise en page CSS
    Réponses: 7
    Dernier message: 28/08/2007, 10h00
  5. Réponses: 2
    Dernier message: 09/01/2006, 16h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo