Fond d'écran en OpenGl (entre autres...)

cs_bubbless Messages postés 14 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 1 mars 2005 - 24 févr. 2005 à 22:16
Arnaud16022 Messages postés 1329 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 16 juin 2010 - 26 févr. 2005 à 10:37
Bonjour à tous !

Je réalise actuellement un programme avec une interface en OpenGL, et, j'ai un problème ! Je voudrais mettre des images en fond d'écran. Pour cela, je dessine un rectangle, et je lui applique une texture. Le problème, c'est que dans ce cas, à l'affichage, ça devient très sombre ?? Je ne comprends pas du tout pourquoi, et comme je débute en OpenGl.. Merci d'avance de toute aide ! J'ai également une autre question : existe-t'il un moyen simple de tracer une sphère et un menu en OpenGL, en n'utilisant que ça (pas Glut ni autre, je ne peux pas....) Voici le code de la fonction de dessin :

int DrawGLMenu(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear Screen And Depth Buffer
glLoadIdentity();
glColor3f(0.7f,0.0f,0.1f);


glTranslatef(0.0f,3.0f,-20.0f); // Move One Unit Into The Screen
// Pulsing Colors Based On The Rotation
glPrint("Menu Principal du programme");
glTranslatef(-6.0f,-2.0f,0.0f);
glPrint("1. Nouveau Jeu");
glTranslatef(-4.0f,-2.0f,0.0f);
glPrint("2. Quitter");
glTranslatef(0.0f,-2.0f,0.0f);
glPrint("3. Guide d'utilisation");
glLoadIdentity();
glColor3f(1.0f,1.0f,1.0f);
glBindTexture(GL_TEXTURE_2D, texture[3]);
glTranslatef(0.0f,0.0f,-11.0f); // Move Right 3 Units
glBegin(GL_QUADS); // Draw A Quad
glTexCoord2f(-0.5f, 0.5f);
glVertex3f(-5.5f, 4.5f, 0.0f); // Top Left
glTexCoord2f(0.5f, 0.5f);
glVertex3f( 5.5f, 4.5f, 0.0f); // Top Right
glTexCoord2f(0.5f,-0.5f);
glVertex3f( 5.5f,-4.5f, 0.0f); // Bottom Right
glTexCoord2f(-0.5f,-0.5f);
glVertex3f(-5.5f,-4.5f, 0.0f); // Bottom Left
glEnd();
return 0;
}

1 réponse

Arnaud16022 Messages postés 1329 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 16 juin 2010 2
26 févr. 2005 à 10:37
ton code est parfait.la pb n'est pas ici.

dans linitialisation tu dois avoir un glEnable(GL_LIGHTING) qu'il faut virer

je suppose que glPrint c'est pour du texte...en tout cas sinon c'est bon . si ca marche tjs pas, fais pareil avec gl_ALPHA



pour tes autres question, tout est possible.

pour le menu: évidement.encore heureux. mais c'est a toi de gérer ca en
entier. openGL fait l'affichage, ok, mais il doit savoir quoi
afficher.va voir ma sourrce hoverbike, la gestion des menus n'est pas
souple mais ca te donnera des idées.

pour la sphere: itou, oui. sauf que je sais pas a quoi ressemble une formule de sphere en algèbre.

2 solution: soit tu crées tu sphere dans uun éditeur 3d, tu
l'enregistre en .obj ou autre, et tu fais copier-coller das ta source
(ou tu charges du disque au runtime)

soit tu cherche sur es sites de maths ou d'olgoritmie comment faire ca.



rien de ce que fait glu ne peut etre fait sans

rien.


_______________________


Omnia vincit labor improbus
0
Rejoignez-nous