[MY-AL]Engrenages capricieux

Questions techniques liées à l’utilisation d'Unity (et n'entrant pas dans le cadre d'une des sections suivantes)
EmileF
Messages : 673
Inscription : 18 Mars 2017 19:39

[MY-AL]Engrenages capricieux

Message par EmileF » 18 Mars 2019 21:40

Bonjour, me revoilou..

Allez, encore besoins de vos lumières.

Cela fait quelque jours que je me bats avec les engrenages de mon jeu.

Le but pour le joueur est de mettre les engrenages en place pour permettre de déplacer la crémaillère.

Le mieux pour les explications est de télécharger le package suivant:
https://drive.google.com/open?id=1esGha ... i2Jf_ak1U9

En mode Edition, quand on sélectionne un gear20, gear16 ou autre on a dans l'inspecteur une case à cocher nommée "Start"
Cette option permet soit de mettre l'engrenage à sa position de départ (sur le socle de la colonne) ou à sa position d'arrivée(sur son axe sur la colonne). En mode Edition, donc, tout va bien.

En mode run, rien ne va plus. ça ne se met pas en place et si on essai de déplacer (La gear20, la plus grosse, s'est la seule qui à cette fonction pour le moment) ça tressaute et ça revient à la même position, je n'arrive pas à comprendre pourquoi.
Je pense que le Hinge Joint n'est pas étranger à l'histoire c'est pour cela que dans le script "Gears", qui gère le déplacement de l'ensemble des engrenages, j'essaye de désactiver le Hinge Joint, mais rien n'y fait.

Est-ce que quelqu'un peut m'aider sur ce coup là.

en tout cas merci.
La différence entre l'intelligence et la stupidité est que l'intelligence est limitée.

Avatar de l’utilisateur
Max
Messages : 8765
Inscription : 30 Juil 2011 13:57
Contact :

Re: [MY-AL]Engrenages capricieux

Message par Max » 18 Mars 2019 23:23

Bonsoir,

Dans le code que tu as, le boolean Start n'est actif qu'en mode éditor (dans ton code tu trouveras un if (!Application.isPlaying)[}). Donc normal qu'en mode play cela soit inactif. Après cela parait logique, une fois l'appli compilée, tu n'auras pas accès à l'inspector.
Image
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ

EmileF
Messages : 673
Inscription : 18 Mars 2017 19:39

Re: [MY-AL]Engrenages capricieux

Message par EmileF » 19 Mars 2019 10:11

Oui, ok, c'est volontaire,

en mode Editor, pour placer la PosStart, j'active Start, et je le désactive pour tout le reste de la mise en place.
mais je ne veux pas que le Start influe en mode Run.

Au démarrage de l'appli les engrenages doivent se mettre automatiquement sur leur PosStart respectif
Mais mon problème vient quand en mode run, le joueur veut déplacer la roue, elle revient obstinément à sa position au moment du démarrage de l'appli. Impossible de jouer que le Start soit activé ou pas.

Essaye de bouger la roue la plus grosse avec un drag et tu constateras le problème. Je suis en train de reprendre mon script en supprimant le Hinge Joint pour voir, mais je suis convaincu que c'est lui la cause de ce problème. Je me trompe peut-être.

Qu'en penses-tu?
La différence entre l'intelligence et la stupidité est que l'intelligence est limitée.

Avatar de l’utilisateur
Max
Messages : 8765
Inscription : 30 Juil 2011 13:57
Contact :

Re: [MY-AL]Engrenages capricieux

Message par Max » 19 Mars 2019 13:50

Bonjour Emile,

J'ai pas eu trop le temps de regarder, mais à priori le soucis vient que tu cherches à faire un drag sur la roue, mais que tu ne prend pas le moyeux, et de plus tu drag un élément auquel est attaché un HingeJoint, ce qui a tendance à remmener la roue dessus. Essais déjà de passer le Moyeux en enfant de Gear. Après pour le joint, c'est moins simple, car à la base c'est un component que tu ne peux pas enabled/disabled.
Image
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ

EmileF
Messages : 673
Inscription : 18 Mars 2017 19:39

Re: [MY-AL]Engrenages capricieux

Message par EmileF » 19 Mars 2019 16:21

Oui, le moyeu, je l'ai corrigé, je ne sais pas pourquoi je l'ai séparé d’ailleurs.

Et c'est bien ce que j'ai remarqué, pour le joint, on le peux pas le dis/enabled donc!!!!

Merci quand même d'avoir bien voulu te pencher sur mon soucis. J'avais l'espoir qu'on puisse court-circuiter les joints

Je suis en train d'éliminer les joints, et de tout faire par script, je pense que je serai plus libre de faire ce que je veux.

Je repasserai par ici, pour montrer le résultat.

A bientôt

Edit:
Si je sais pourquoi j'ai séparé le moyeu de la roue, c'est parce que j'ai des axes de différentes formes, et je ne pouvais pas faire tourner le moyeux sans faire tourner l'axe, et je ne peux pas apparenter l'axe aussi car je veux pouvoir séparer la roue de l'axe, afin que l'axe symbolise la place finale de l’engrenage. (Enfin tout cela n'est pas encore très clair et définitif)
La différence entre l'intelligence et la stupidité est que l'intelligence est limitée.

EmileF
Messages : 673
Inscription : 18 Mars 2017 19:39

Re: [MY-AL]Engrenages capricieux

Message par EmileF » 20 Mars 2019 03:51

Voilà le but que je voulais atteindre:
https://drive.google.com/open?id=1esGha ... i2Jf_ak1U9

Je n'utilise plus Hinge Joint, tout est calculé par scripts :
"Gear" pour la mise en place avec l'éditeur
"Gears" pour la gestion des gears en mode jeu
"Rack" pour la gestion de la crémaillère

Voilà pour le cas ou ça intéresserait quelqu'un.

Ne pas hésiter si vous avez une observation.

A bientôt et merci
La différence entre l'intelligence et la stupidité est que l'intelligence est limitée.

Avatar de l’utilisateur
Max
Messages : 8765
Inscription : 30 Juil 2011 13:57
Contact :

Re: [MY-AL]Engrenages capricieux

Message par Max » 20 Mars 2019 08:35

Merci pour le partage.
Image
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ

Répondre

Revenir vers « Unity le logiciel »