Bonjour , j'aimerais créer une interface graphique pour mon jeu mais je ne sais pas comment faire... Pour créer des menus etc... si vous savez ou trouvez des tutoriaux.
merci.
Bonjour , j'aimerais créer une interface graphique pour mon jeu mais je ne sais pas comment faire... Pour créer des menus etc... si vous savez ou trouvez des tutoriaux.
merci.
Mon blog sur la 3d et la programation! de bien vouloir le visiter!
cherche GLUT sur google et tu devrais trouver ton bonheur !
I'm the kind of guy that until it happens, I won't worry about it. - R.H. RoY05, MVP06
ca depend de ce que tu veut comme menu...
pour le jeu qu'on a réalisé, on avait juste besoin de boutons, alors on les a codé nous même...
* Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
* pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
Mes articles
C'est vrai mais s'il dit ".. et je ne sais pas comment faire" c'est qu'il a dépassé le stade optimiste où on se dit qu'on va s'en sortir à la main sans utiliser d'API
I'm the kind of guy that until it happens, I won't worry about it. - R.H. RoY05, MVP06
Je crois qu'on peut le faire aussi en utilisant des librairies comme QT, GTK, les api windows... comme pour un programme classique et faire tourner le moteur graphique "derrière" plutot que glut qui est plutot limité d'après ce que j'ai entendu .
Sinon j'avais la même question mais en les codant à la main. Je pensais faire un truc dans ce genre :
Une classe de base Widget qui gérera les évènements (click, drag, moveOn...) de laquelle on fait dériver plusieurs classes (Boutons, ListBox, CheckBox...).
On crée les Widgets utiles à notre interface par l'intermédiaire d'un gestionnaire. Le problème c'est comment "plaquer" tous ces widgets face à la caméra ?
J'ai trouvé comment faire en passant d'une matrice de projection en mode orthograhique (orthogonal ?) qui dessine les boutons à la matrice de projection en mode perspective. Un petit bout de code pour illustrer :
Dans l'exemple, j'ai bien un carré qui rempli le quart de mon écran en bas à droite.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 void Renderer::render() { glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ); glMatrixMode( GL_PROJECTION ); glLoadIdentity(); gluOrtho2D(-10, 10, -10, 10); glDisable( GL_TEXTURE_2D ); glMatrixMode( GL_MODELVIEW ); glLoadIdentity(); glBegin(GL_QUADS); glColor3f( 1.0, 1.0, 1.0); glVertex2f(0.0, 0.0); glVertex2f(0.0, -10.0); glVertex2f(10.0, -10.0); glVertex2f(10.0, 0.0); glEnd(); glMatrixMode( GL_PROJECTION ); glLoadIdentity(); gluPerspective( 60.0, (float)640/(float)480, 1.0, 4000.0 ); glMatrixMode( GL_MODELVIEW ); /* On dessine le reste des objets */ }
A partir de là, est-ce qu'il y a plus simple pour gérer ça ? Par exemple avec juste une matrice de projection en perspective ? Ca ne pose pas de problèmes d'avoir deux matrices de projection différente pour la gestion des évènements ?
non ca ne pose pas de problemes... en plus si tu definit ta matrice ortho avec les même dimensions que la resolution de l'ecran ca permet de travailler au pixel pres... pratique pour la gestion des evenements souris...
* Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
* pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
Mes articles
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager