Hello
J'ai imaginé un script pour déplacer mon Personnage sur une carte en vue du dessus, le personnage ce déplacerait de niveau en niveau représenter par des cases, j'ai imaginé tout le code pour que ça marche et tout est BON.
MAIS vous vous en douter si je suis là c'est qu'il y'a un MAIS. En faite j'ai un peut menti en disant que tout était bon car, même si c'est le cas il me manque un bout de script pour que ça marche, j'aimerais déplacer mon personnage au PIXEL PRES d'une case a une autre.
EXEMPLE: SI j’appuie sur ma touche "Droite" faire déplacer le personnage vers la droite MAIS il faut qu'il s'arrête sur la prochaine case.
Le problème étant là j'arrive a luis appliquer une force avec admet-on AddForce mais je n'arrive pas l’arrêter c'est pourtant surement si simple mais je n'y arrive pas alors je fait appelle a vous.
Déplacer un GameObject sur une carte 2D d'un point A a un point B.
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :
Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé
Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie
Exemple :
[DB-RS] Mouvement perso multijoueur
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :
Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé
Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie
Exemple :
[DB-RS] Mouvement perso multijoueur
-
- Messages : 4
- Inscription : 08 Nov 2018 11:00
Re: Déplacer un GameObject sur une carte 2D d'un point A a un point B.
Salut
A mon avis ton soucis c'est que si tu déplace ton perso avec une force ça va en effet être très dure a gérer précisément ses déplacement.
il faudrait que tu regarde du coté de Transform.Translate qui te permettra de définir précisément un mouvement.
Tu peux aussi regarder Ce topic du forum ou quelqu'un met justement en place les déplacements case par case
A mon avis ton soucis c'est que si tu déplace ton perso avec une force ça va en effet être très dure a gérer précisément ses déplacement.
il faudrait que tu regarde du coté de Transform.Translate qui te permettra de définir précisément un mouvement.
Tu peux aussi regarder Ce topic du forum ou quelqu'un met justement en place les déplacements case par case
______________________________________________________________
\_______________________ Impossible is nothing _______________________/
-
- Messages : 4
- Inscription : 08 Nov 2018 11:00
Re: Déplacer un GameObject sur une carte 2D d'un point A a un point B.
Merci de ta réponse
en ce qui concerne Transform.Translate je n'ai pas que de bon souvenir, ça peut être une solution. Mais concrètement je ne vois pas comment je pourrait (imaginons) déplacer mon personnage de 200pixel et l’arrêter une fois les 200 pixel atteint (à moins que tu est un exemple ?)
Bref je me suis donc plutôt tourner vers le topic et j'ai pu constater qu'il a un problème similaire au mien j'ai pas mal prêter attention mais même si c'est similaire son problème et plus complexe et n'est similaire au final que de très loin... alors je pense que je vais devoir me concentrer (malheureusement pour moi) au Transform.Translate
en ce qui concerne Transform.Translate je n'ai pas que de bon souvenir, ça peut être une solution. Mais concrètement je ne vois pas comment je pourrait (imaginons) déplacer mon personnage de 200pixel et l’arrêter une fois les 200 pixel atteint (à moins que tu est un exemple ?)
Bref je me suis donc plutôt tourner vers le topic et j'ai pu constater qu'il a un problème similaire au mien j'ai pas mal prêter attention mais même si c'est similaire son problème et plus complexe et n'est similaire au final que de très loin... alors je pense que je vais devoir me concentrer (malheureusement pour moi) au Transform.Translate
- boubouk50
- ModoGenereux
- Messages : 6185
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: Déplacer un GameObject sur une carte 2D d'un point A a un point B.
Je ne suis pas calé en 2D, mais il doit forcément exister un ratio entre la résolution d'affichage et les coordonnées monde, puisque tu travailles sur une résolution fixe au départ pour caler tout ton petit monde. (Je sais que sur le Canvas, cela se fait). De ce ratio découle la translation à effectuer. Une simple règle de trois.
J'ai tapé Pixel size Unity 2D dans un moteur de recherche. Ceci est un exemple, il y a d'autres sources.
J'ai tapé Pixel size Unity 2D dans un moteur de recherche. Ceci est un exemple, il y a d'autres sources.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Re: Déplacer un GameObject sur une carte 2D d'un point A a un point B.
déplacer un personnage de 200px?
Excuse moi mais ça ne veut un peu rien dire. ^^
des pixels ou? a l'image de l'écran? a la texture sur un objet?
dans les deux cas c'est des paramètres variable.
fais voir un screen de ce que tu cherche a faire.
Dans tout les cas il faut déplacer en unité et non pixel
Même si, par hypothèse de cas, tu as un plan avec une texture représentant des case, et tu veux ton perso se déplace sur ce plan d'une case :
- tu connais la taille de ton plan
- tu connais le nombre de case affichées
- tu en déduis la taille d'une case, ce qui te donne une distance (taille du plan / nombre de case en largeur )
- tu déplace ton perso de cette distance
Excuse moi mais ça ne veut un peu rien dire. ^^
des pixels ou? a l'image de l'écran? a la texture sur un objet?
dans les deux cas c'est des paramètres variable.
fais voir un screen de ce que tu cherche a faire.
Dans tout les cas il faut déplacer en unité et non pixel
Même si, par hypothèse de cas, tu as un plan avec une texture représentant des case, et tu veux ton perso se déplace sur ce plan d'une case :
- tu connais la taille de ton plan
- tu connais le nombre de case affichées
- tu en déduis la taille d'une case, ce qui te donne une distance (taille du plan / nombre de case en largeur )
- tu déplace ton perso de cette distance
______________________________________________________________
\_______________________ Impossible is nothing _______________________/
-
- Messages : 4
- Inscription : 08 Nov 2018 11:00
Re: Déplacer un GameObject sur une carte 2D d'un point A a un point B.
Merci BouBouk
Je vais travailler dessus
Je vais travailler dessus
-
- Messages : 4
- Inscription : 08 Nov 2018 11:00
Re: Déplacer un GameObject sur une carte 2D d'un point A a un point B.
Merci djulio tu m'aide un peut plus ^^
avant je travailler sur un autre moteur ou l'unité de Unity était définie comme pixel je n'ai pas encore pris l'habitude de Unity donc si je fait des faute c'est normal
merci a vous 2 je pense que j'ai asser d'information pour mener à bien ce projet ^^
avant je travailler sur un autre moteur ou l'unité de Unity était définie comme pixel je n'ai pas encore pris l'habitude de Unity donc si je fait des faute c'est normal
merci a vous 2 je pense que j'ai asser d'information pour mener à bien ce projet ^^
-
- Messages : 27
- Inscription : 16 Oct 2018 23:14
Re: Déplacer un GameObject sur une carte 2D d'un point A a un point B.
Bon moi je suis pas un kador en programmation mais par contre je suis graphiste et mes connaissances en informatique suffisent pour te dire que ce n'est pas une bonne idée de travailler en "pixels" pour gérer tes déplacements. Ça n'a aucun sens dans la mesure où le pixel n'est pas une unité de mesure. D'ailleurs je ne sais même pas si c'est prévu dans Unity mais ça m'étonnerait ! Le script de Djulio dans le lien que t'a donné Boubouk est juste parfait pour règler ton problème il suffit d'intervenir sur les valeurs de déplacement, et de les diviser si tu trouves que les "pas" sont trop grands.