rotation de cube

Pour les scripts écrits en C#
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
juliuson
Messages : 102
Inscription : 03 Mai 2017 18:00

rotation de cube

Message par juliuson » 29 Juil 2017 14:34

Coucou à tous,

voici ma question : j'ai rentré le code suivant avec un cube sur un plan pour que le cube tourne autour du centre (X=0, Y=0,Z=0):

Code : Tout sélectionner

void Update()
	{
		transform.RotateAround (Vector3.zero, Vector3.up, 90 * Time.deltaTime);
	}
Le cube tourne bien au centre du plan en continu, mais moi ce que je cherche à faire, c'est que le cube tourne seulement de 30°.
Ce que je voudrais , c'est que le cube soit animé puis s'arette au bout de 30°.
Ou mieux, sans animation, comme si le cube se téléportait de 30° autour du centre.

Merci à vous,

A+
 ! Message de : Max
Quel rapport avecc les news d'Unity France ?
Essayez de poster dans les bonnes sections.
Se référer à la Netiquette. Merci

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

Re: rotation de cube

Message par Max » 29 Juil 2017 17:18

Bonjour juliuson,
juliuson a écrit :
29 Juil 2017 14:34
Ce que je voudrais , c'est que le cube soit animé puis s'arette au bout de 30°.
Ou mieux, sans animation, comme si le cube se téléportait de 30° autour du centre.
En fait je ne suis pas sûr de comprendre.
Tu cherches à avoir une rotation progressive de 30°, ou bien tu cherches à juste positionner à un moment donné ton cube à une valeur de 30° ?
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

juliuson
Messages : 102
Inscription : 03 Mai 2017 18:00

Re: rotation de cube

Message par juliuson » 29 Juil 2017 18:08

Salut à toi Max,

En fait j'essaye de faire tourner un cube sur les X autour du centre d'un plan (ou d'une scene).
Celui-ci doit tourner autour du centre de 30° autour du centre à chaque clics de souris en se déplacement ou en se téléportant d'une rotation de 30°.

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

Re: rotation de cube

Message par Max » 29 Juil 2017 20:54

Re-,
juliuson a écrit :
29 Juil 2017 18:08
Celui-ci doit tourner autour du centre de 30° autour du centre à chaque clics de souris en se déplacement ou en se téléportant d'une rotation de 30°.
dans ce cas (si j'ai bien compris), passer par transform.RotateAround semblait être une bonne approche.

Si 'plan' est le Transform de ton plan de référence, tu pourrait écrire pour chaque click de souris:

Code : Tout sélectionner

transform.RotateAround(plan.position, Vector3.forward, 30.0f);
et à chaque click, ton cube prendra 30° autour de ton plan autour de l'axe des X.
Après une fois bien implémenté, tu pourras éventuellement voir pour faire un système de transition à chaque changement d'angle.
Image
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

juliuson
Messages : 102
Inscription : 03 Mai 2017 18:00

Re: rotation de cube

Message par juliuson » 01 Août 2017 17:38

Merci de tes conseil,

Tu sembles bien avoir compris que je voulais faire tourner un cube autour du centre de 30°.
Mais lorsque je rentre ton code dans mon fichier JS il m'envoie un message d'erreur alors qu'il compile parfaitement dans le compilateur.
(All compiler errors have to be fixed before you can enter playmode!).

Je ne sais pas si je dois rentrer le code dans le cube ou dans le plan.
J'ai éssayé les deux, mais rien ne marche.

Dans l'tente d'une aide précieuse,

A+

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

Re: rotation de cube

Message par Max » 01 Août 2017 18:09

Bonsoir,
juliuson a écrit :
01 Août 2017 17:38
Mais lorsque je rentre ton code dans mon fichier JS il m'envoie un message d'erreur alors qu'il compile parfaitement dans le compilateur.(All compiler errors have to be fixed before you can enter playmode!).
Plusieurs choses.
Le message d'erreur te signifie qu'il y a bien un soucis niveau script. Donc il faut trouver.
D'ailleurs il serait bon de poster ton code en entier, cela permettrais d'y voir peut-être plus clair.
En suite, tu sembles avancer à tâtons, que se soit en terme de code qu'en terme d'utilisation d'Unity. Il va donc falloir apprendre les bases de manière un peu plus consistantes, sinon chaque pas pour toi sera un véritable supplice.
Le bout de code que j'ai posté était en C#, ceci dit, en JS cela ne doit pas être tellement différents.
Genre

Code : Tout sélectionner

var plan : Transform;

function Update () {

	if(Input.GetMouseButtonDown(0))
		transform.RotateAround(plan.position, Vector3.forward, 30);

}
Après, ce script écrit de la sorte doit être placé sur le cube, à toi de renseigner dans l'inspector la partie 'plan'.
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

juliuson
Messages : 102
Inscription : 03 Mai 2017 18:00

Re: rotation de cube

Message par juliuson » 02 Août 2017 13:49

Salut à tous,

J'ai essayé votre script en C#, mais il plante à la ligne suivante :
var Transform : plan; avec le message (; attendu).

J'ai éssayé également en JS mais il envoie le message d'erreur
(All compiler errors have to be fixed before you can enter playmode!)

Bien à vous,

A+

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: rotation de cube

Message par boubouk50 » 02 Août 2017 14:11

juliuson a écrit :
02 Août 2017 13:49
Salut à tous,

J'ai essayé votre script en C#, mais il plante à la ligne suivante :
var Transform : plan; avec le message (; attendu).
Ce n'est pas ce qu'a écrit Max!

Code : Tout sélectionner

var plan : Transform;
juliuson a écrit :
02 Août 2017 13:49
J'ai éssayé également en JS mais il envoie le message d'erreur
(All compiler errors have to be fixed before you can enter playmode!)
C'est du Js...
"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

juliuson
Messages : 102
Inscription : 03 Mai 2017 18:00

Re: rotation de cube

Message par juliuson » 02 Août 2017 14:43

Coucou,

Même en mettant le code suivant : "var plan : Transform ;" le message suivant s'affiche (; attendu).

Dans l''attente d'un réponse.

A+

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: rotation de cube

Message par boubouk50 » 02 Août 2017 14:48

Peux-tu nous copier-coller le message d'erreur intégralement, stp? Parce que cette ligne est juste, l'erreur est ailleurs.
Peux-tu également nous copier-coller ton code entièrement?
"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

Répondre

Revenir vers « (C#) CSharp »