#0 

19-05-2008 15:38:59

littleben
Membre
Date d'inscription: 14-04-2008
Messages: 97

Bonjour. J'ai créé un environnement dans lequel se trouve un cube.

J'ai associé à mon environnement un récepteur d'évènements. Dans celui-ci, lorsque j'appuie sur la touche 4 de mon clavier numérique, je lui dit de faire tourner le cube :

cube->setRotation(core::vector3df(0.0f, 1.0f, 0.0f));

Le problème c'est que lorsque j'appuie sur ce bouton, le cube tourne puis reprend sa position intitiale tout de suite après. Je ne comprends pas pourquoi. Est-ce normal ? Quelqu'un pourrait-il m'aider svp ?

D'autres part, quel est l'unité pour setRotation (degré ou radian) ?

Merci.

Hors ligne


#1 

19-05-2008 15:50:11

bestben
Abonné
Date d'inscription: 20-10-2007
Messages: 133

setRotation() est en "unité irrlicht" , mais je pense que sa utilise les degrés sinon il y a setRotationDegrees() et setRotationRadians()
pour le cube, est ce que tu a définit la position (sens, etc ...) de ton cube dans la boucle principale (d'affichage)

Hors ligne


#2 

19-05-2008 16:03:19

wizad
Abonné
Lieu: Caen
Date d'inscription: 30-09-2006
Messages: 106

Ton problème doit venir que tu remodifie la rotation à chaque passage dans ta boucle de rendu ainsi ta position ne reste que pour un tour de boucle.

Hors ligne


#3 

20-05-2008 09:36:45

littleben
Membre
Date d'inscription: 14-04-2008
Messages: 97

A bestben : oui tout est définit, cependant je n'ai pas trouvé les méthodes que tu m'a énoncé.

A wizad : je ne dis jamais cube->setRotation(core::vector3df(0,0,0));
je ne vois pourquoi elle reprendrai sa position. A moins que cela vienne du paramètre "rotation" appartenant à la méthode addCubeSceneNode que je n'aurais pas bien compris ?

Hors ligne


#4 

20-05-2008 09:45:02

wizad
Abonné
Lieu: Caen
Date d'inscription: 30-09-2006
Messages: 106

Bah disons que là va peut être falloir que tout nous montre ton code parce que à part te donner une ligne au pif on peut difficilement plus t'aider.

Hors ligne


#5 

20-05-2008 11:07:49

littleben
Membre
Date d'inscription: 14-04-2008
Messages: 97

C'est bon j'ai résolu le problème ( a chaque fois j'oubliais d'ajouter la rotation actuelle de l'objet, ce qui fait que je donner une rotation à partir du même point tout le temps, et cette rotation était du même angle).

Par contre quelqu'un peut me dire ou se trouve setRotationRadians() et setRotationDegrees() ?

Hors ligne


#6 

20-05-2008 11:54:31

Perceval
Abonné
Date d'inscription: 20-10-2006
Messages: 105

http://irrlicht.sourceforge.net/docu/cl … 4.html#a57

Le prends pas mal, mais j'ai l'impression en lisant tes posts que souvent, tu poses des questions sans même chercher les réponses par toi-même. Il m'a fallu moins d'une minute pour trouver ces fonctions dans l'API d'Irrlicht. Je pense que t'aurais eu ta réponse beaucoup plus vite si t'avais cherché 5 minutes de plus.
De la même manière, quand tu demandes de l'aide parce que ton programme ne se comporte pas comme tu le veux, n'hésite pas à poster ton code, parce que comme te l'as dit Wizad, personne ne pourra t'aider à le débugger sans le voir...

Hors ligne


#7 

20-05-2008 16:00:27

littleben
Membre
Date d'inscription: 14-04-2008
Messages: 97

Tu as raison. En sa fait plus de 6 semaines non stop que je découvre Irrlicht et que je cherche différentes choses (que je trouve d'ailleurs) dans la structure du moteur. Alors c'est vrai que parfois pour des broutilles j'ai la flemme de chercher et je pose la question, préférant me concentrer sur des problèmes plus conséquents.

Merci quand même pour ta réponse.

Hors ligne


Options Liens officiels Caractéristiques Statistiques Communauté
Corrections
irrlicht
irrklang
irredit
irrxml
xhtml 1.0
css 2.1
Propulsé par FluxBB
Traduit par FluxBB.fr
882 membres
1429 sujets
11119 messages
Dernier membre inscrit: LiseBuisson96
94 invités en ligne
Aucun membre connecté
RSS Feed