Un problème de rotation

Questions techniques liées à l’utilisation d'Unity (et n'entrant pas dans le cadre d'une des sections suivantes)
Avatar de l’utilisateur
KassaK
Messages : 51
Inscription : 29 Sep 2014 14:27

Un problème de rotation

Message par KassaK » 13 Nov 2017 13:40

Hello,

J'ai un petit souci de rotation dont je n'arrive pas à me débarrasser, explications ci dessous :)

J'ai un prefab classique que j’instancie en C# à une position x/y dans un canvas en World Space. Le but est d'afficher une icône à coté d'un GameObject dans ma scène.

Donc pour ça il n'y a pas de souci, mon prefab est bien instancié, il est à la bonne position et il reste bien à coté de mon GameObject quand je bouge la caméra. Mon problème est que j'aimerais ajouter à ce prefab une rotation de -45 sur l'axe X.

Lorsque je rajoute cette rotation à la main APRES avoir cliqué sur play directement dans l'inspector, c'est ok... et c'est le seul cas ou ça marche.

Si je tente de rajouter cette valeur -45 directement dans mon prefab et que je l'instancie comme ça, il part en vrille (on dirait que l'axe de rotation part en cacahuète).

Si je tente d'ajouter cette rotation directement sur mon canvas WorldSpace, lorsque j'instancie mon prefab et que je lui donne an parent ce canvas, cette valeur est compensée (donc ça annule), j'ai tenté le param false de la fonction setParent pour pas tenir compte des valeurs du parent mais c'est pire.

Si je tente d'instancier mon prefab et de lui ajouter la rotation en C# c'est idem que plus haut, il part en cacahuète : panel.transform.rotation = Quaternion.Euler (-45, 0, 0);

J'ai tenté d'autres choses mais c'est toujours pareil, le seul moyen que j'ai trouvé pour que la rotation de -45 en X soit correcte, c'est de l'ajouter directement dans l'inspector une fois avoir cliqué sur Play... vous avez une idée ?

(Si besoin de plus d'infos demandez !)

Merci !

Répondre

Revenir vers « Unity le logiciel »