Bonjour,
Quelqu'un pourrait-il m'indiquer quelle est la bonne méthode pour faire pivoter l'hexagone autour d'une des 6 arêtes sans créer 6 animations ?
J'ai créé un hexagone via sketchup, j'en ai fait un prefab avec ses propres composants dont l'animation qui devrait faire tourner de 180° l'hexagone autour d'une de leurs 6 arêtes. Dans mon jeu, l'arête qui sert de pivot est choisie aléatoirement lors de l'exécution du script. L'hexagone avance donc en pivotant sur une de ses 6 arêtes.
J'ai essayé en créant une animation par arête.
Le script créait une instance de l'arête voulue, la rendait parente du jeton et le pivotement se faisait correctement.
Mais il était pénible de mettre à jour les 6 animations à chaque fois que je voulais les modifier. En plus je me suis dis que je pouvais limiter le nombre de GameObject par hexagone sachant que le jeu comprendra une cinquantaine d'hexagones.
Je n'ai donc conservé qu'une seule arête en tant que GameObject que je n'instancie plus. Je pivote l'arête autour de l'axe vertical de l'hexagone pour qu'elle se positionne sur la arête choisie aléatoirement. Ensuite Je la rend parente de l'hexagone le temps de jouer l'animation de pivotement.
quand je clique sur l'arête qui doit faire pivoter l'hexagone, l'origine de ses axes est placée au centre de l'arête. Le problème est que lorsque je rentre en mode enregistrement dans l'animation, la position et l'orientation des axes de l'arête instanciée restent à la position initiale de l'arête avant sa rotation par rapport à l'axe vertical. Je ne comprend pas pourquoi.
Merci
[RESOLU] Repère différent en mode enregistrement d'une animation
[RESOLU] Repère différent en mode enregistrement d'une animation
Dernière édition par Danytro le 30 Août 2018 09:10, édité 1 fois.
Re: Repère différent en mode enregistrement d'une animation
Faudrait que tu nous montre un peu le code dont tu te sert pour faire les rotations pour qu'on puisse t'aider car juste avec tes explication, c'est un peu abstrait
Re: Repère différent en mode enregistrement d'une animation
Le reparentage dynamique en animation sur unity, c'est pas trop ça.
Tu ferais mieux de tout faire avec du code, ça peut paraître plus compliqué au départ, mais au final ce sera plus simple et plus souple à utiliser et paramétrer.
Et puis tu as déjà posé une question similaire il y a quelques temps... je ne vois pas bien la différence avec ton souci précédent...
Tu ferais mieux de tout faire avec du code, ça peut paraître plus compliqué au départ, mais au final ce sera plus simple et plus souple à utiliser et paramétrer.
Et puis tu as déjà posé une question similaire il y a quelques temps... je ne vois pas bien la différence avec ton souci précédent...
Re: Repère différent en mode enregistrement d'une animation
La rotation est effectuée via une animation, pas avec du code. C'est la changement de hiérarchie du pivot qui est effectué avec du code. Depuis ma question, j'ai recréé une animation pour chaque pivot. L'héxagone pivote bien autour de l'axe de l'arête voulue.
Re: Repère différent en mode enregistrement d'une animation
Mes problèmes sont liés au système de coordonnées d'Unity (local / global) que je n'ai pas bien compris. Par exempleAlesk a écrit : ↑27 Août 2018 16:56Le reparentage dynamique en animation sur unity, c'est pas trop ça.
Tu ferais mieux de tout faire avec du code, ça peut paraître plus compliqué au départ, mais au final ce sera plus simple et plus souple à utiliser et paramétrer.
Et puis tu as déjà posé une question similaire il y a quelques temps... je ne vois pas bien la différence avec ton souci précédent...
, quelque soit l'argument worldPositionStays choisi, lorsque je change la parent d'un GameObject, il change de position sur la scène en fonction de la position du nouveau parent alors que je voudrais que ce GameObject ne bouge pas. Je vais étudier le sujet....
Re: [RESOLU] Repère différent en mode enregistrement d'une animation
Il va falloir nous filer un petit package d'exemple de ton projet... juste le code ça n'aidera pas à capter ce qui coince avec la partie animation.
Mais sinon, pourquoi as-tu besoin d'utiliser des animations ? Est-ce absolument nécessaire ? Car ton problème serait beaucoup plus simple à régler en n'utilisant que du code...
Mais sinon, pourquoi as-tu besoin d'utiliser des animations ? Est-ce absolument nécessaire ? Car ton problème serait beaucoup plus simple à régler en n'utilisant que du code...
Re: [RESOLU] Repère différent en mode enregistrement d'une animation
Bonjour,
L'animation correspond au pivotement d'un hexagone autour d'une de ses arêtes. Par ses pivotements, l'hexagone dévale une pente.
Pendant cette rotation, l'hexagone change légèrement de position de manière à passer de son ancien réceptacle vers son nouveau réceptacle. J'ai essayé au départ de coder les mouvements mais je n'arrivait pas à synchroniser les mouvements de rotation et la translation de l'hexagone. J'ai remarqué également la possibilité de jouer sur les "courbes" de déplacement de l'objet dans l'animation, cela m'a semblé parfait pour faire des réglages fins.
Je ne suis pas sûr d'être capable de faire un "package", le projet en est à son début. Une copie écran serait peut-être suffisante mais il semble que la limite du nombre de pièces jointes sur le forum ai été atteinte.
L'animation correspond au pivotement d'un hexagone autour d'une de ses arêtes. Par ses pivotements, l'hexagone dévale une pente.
Pendant cette rotation, l'hexagone change légèrement de position de manière à passer de son ancien réceptacle vers son nouveau réceptacle. J'ai essayé au départ de coder les mouvements mais je n'arrivait pas à synchroniser les mouvements de rotation et la translation de l'hexagone. J'ai remarqué également la possibilité de jouer sur les "courbes" de déplacement de l'objet dans l'animation, cela m'a semblé parfait pour faire des réglages fins.
Je ne suis pas sûr d'être capable de faire un "package", le projet en est à son début. Une copie écran serait peut-être suffisante mais il semble que la limite du nombre de pièces jointes sur le forum ai été atteinte.
Re: [RESOLU] Repère différent en mode enregistrement d'une animation
Tu auras plus de souplesse ou de réactivité en utilisant les courbes d'animation, si tu désires faire des mouvements un peu compliqués.
Par contre, pour une simple rotation et une translation, tu seras moins précis qu'avec du code est des calculs mathématiques dans le cas qui t'occupe.
Essaye de poster une vidéo sur youtube pour montrer en détails ce qui cloche, une simple capture d'écran ne suffira pas.
Par contre, pour une simple rotation et une translation, tu seras moins précis qu'avec du code est des calculs mathématiques dans le cas qui t'occupe.
Essaye de poster une vidéo sur youtube pour montrer en détails ce qui cloche, une simple capture d'écran ne suffira pas.