SOS rotation en opengl

Signaler
Messages postés
6
Date d'inscription
mercredi 24 mars 2004
Statut
Membre
Dernière intervention
30 mai 2004
-
Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
-
je suis en train de faire un tetris en C avec une interface opengl et j'ai un probleme pour faire tourner les figures sur elles-même . la fonction glrotatef me fait tourner la figure autour du centre de la fenetre et non autour du centre de la figure.
je suppose qu'il faut utiliser un repere local mai je sais tro pas commen faire ..... :sad)

PLEASE HELP!!

5 réponses

Messages postés
368
Date d'inscription
jeudi 13 mars 2003
Statut
Membre
Dernière intervention
27 janvier 2010
1
pas besoin d'utiliser une fonction de rotation , ça fait trop prise de tete moi j'avais utilisé un systeme genre tu declares des tableaux de 3 dimensions :

unsigned int T[ 4 ] [ 4 ] [ 4 ]={ /*T : 1
1 1 1 */
{
{ 0 , 0 , 0 , 0 },
{ 3 , 3 , 3 , 0 },
{ 0 , 3 , 0 , 0 },
{ 0 , 0 , 0 , 0 }
},

{
{ 0 , 3 , 0 , 0 },
{ 0 , 3 , 3 , 0 },
{ 0 , 3 , 0 , 0 },
{ 0 , 0 , 0 , 0 }
},

{
{ 0 , 3 , 0 , 0 },
{ 3 , 3 , 3 , 0 },
{ 0 , 0 , 0 , 0 },
{ 0 , 0 , 0 , 0 }
},

{
{ 0 , 3 , 0 , 0 },
{ 3 , 3 , 0 , 0 },
{ 0 , 3 , 0 , 0 },
{ 0 , 0 , 0 , 0 }
}
};

et ainsi de suites pour les autres formes !
bien evidement à chaque fois que le joueur fait une rotation tu fais varier le premier 4 des [4][4][4] ...
enfin je suis sur que tu m'as compris !
Messages postés
6
Date d'inscription
mercredi 24 mars 2004
Statut
Membre
Dernière intervention
30 mai 2004

c une bonne idee.
c vrai ke ca me semble plus simple ke la fonction glrotate.
mais comment tu fais le lien entre la matrice et l'affichage sous opengl?

et comment tu declare la matrice au debut?

je suis dans la merde.
c un projet info ke je dois rendre cette semaine et je maitrise pas trop l'info.

merci
Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
3
translatef(....) avant de faire le rotatef
Optimiser, c'est bien, déboguer c'est mieux
Messages postés
6
Date d'inscription
mercredi 24 mars 2004
Statut
Membre
Dernière intervention
30 mai 2004

ok
tres bonne idee goldeneye
petit probleme: la figure tourne mais ne reste pas a l'ecran.
des que je lache la touche, je retrouve ma figure initiale.

comment garder ma figure affichee a l'ecran apres rotation?

merci
Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
3
ne fais pas de glPush() avant le mouvement ?
ou bien incrémente à chaque fois les param du translatef
Optimiser, c'est bien, déboguer c'est mieux