jotb a écrit :
J'ai un projet à faire où on doit notamment modéliser la fusée de Tintin, et je débute en OpenGL. J'ai donc crée mes fonctions fuselage, ailette et amortisseur, qui représentent les parties de cette fusée. J'ai une liste comme ceci
Code :
- glNewList(FUSEE, GL_COMPILE);
- Fuselage();
- Ailette();
- Amortisseur();
- glEndList();
|
Le truc c'est que la fusée de Tintin a 3 "pates", donc j'ai calculé à la main les rotations et je les ai inclus dans les fonctions ailette et amortisseur à la barbare. Résultat : des fonctions immenses et où je fais 3 fois la même chose.
Je viens de découvrir qu'en enlevant mes rotations à la porc, et en écrivant : Code :
- glNewList(FUSEE, GL_COMPILE);
- Fuselage();
- Ailette();
- Amortisseur();
- glPushMatrix();
- glRotatef(120, 0, 1, 0);
- Ailette();
- Amortisseur();
- glRotatef(120, 0, 1, 0);
- Ailette();
- Amortisseur();
- glPopMatrix();
- glEndList();
|
Eh bien j'arrive au même résultat. Cette solution me semble plus propre. Me conseillez vous de procéder ainsi ?
|