JEU DE DAME EN C ET OPENGL

Signaler
Messages postés
80
Date d'inscription
lundi 28 juillet 2003
Statut
Membre
Dernière intervention
22 mars 2007
-
Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/20541-jeu-de-dame-en-c-et-opengl

Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
8
essay sans display list , pour moi c'est 2,5 fois plus rapide sans
Messages postés
24
Date d'inscription
dimanche 22 juin 2003
Statut
Membre
Dernière intervention
12 décembre 2004

Le probleme c'est que je suis obligé de séparrer le dessin de chaque case (oui, je sais c'est pas évident) pourquand je vais voulloir annimé les pions (qui vont faire un peu les cons en fait) et je suis aussi obligé d'utilisé glut car on est sencé rendre un prog linux.....


Enfin, c'est pas gagné tout ca.
Messages postés
24
Date d'inscription
dimanche 22 juin 2003
Statut
Membre
Dernière intervention
12 décembre 2004

Le probleme c'est que je suis obligé de séparrer le dessin de chaque case (oui, je sais c'est pas évident) pourquand je vais voulloir annimé les pions (qui vont faire un peu les cons en fait) et je suis aussi obligé d'utilisé glut car on est sencé rendre un prog linux.....


Enfin, c'est pas gagné tout ca.
Messages postés
212
Date d'inscription
dimanche 29 juin 2003
Statut
Membre
Dernière intervention
13 mai 2006

ce qui prend du temps c'est
glCallList(glDm.Damier[c][r]);
glCallList(glDm.PionB);
glCallList(glDm.PionN);

pour ce qui est du dessin de chaque case tu peux facilement optimiser.tu nous dessine un .raw qui contient deja le quadrillage en entier.
moi chez moi je passe de 380 frame/s a 320 juste en enlevant
glCallList(glDm.Damier[c][r]);
-> ca vaut donc le coup.

glCallList(glDm.PionB);
320 ->380 en enlevant cette fonction
pour ca je sais pas si c'est plus rapide mais glu propose ses propre routine pour faire des cylindres.
peut etre qu' elle sont optimisées de facon plus efficaces

glCallList(glDm.PionN);
pareil avec un:
gluCylinder(GLUquadric *qobj,GLdouble baseradius, GLdouble topradius, GLdouble height, GLint sclice, GLint stack)
les sous routines de glu peuvent etre mise dans des list (gain de vitesse)

voila sinon les graphisme sont pas mal
la fonction glutIdleFunc(Idle); -> sert a mettre tous les calculs


sans aucun dessin mon ordi tourne a 550 frames par secondes
un dernier truc je programme avec le sdk (il me semble que c'est comme ca que ca s'appelle) de nehe et quand on se met en mode fullscreen on gagne pas mal de vitesse
pour un jeu de dame je pense que du 640*480 c'est suffisant
donc si tu veux encore gagner de la vitesse c'est une solution

enfin glut a pas une reputation super pour la vitesse
le sdk de nehe.net ne sollicite pas de connaissances windows mais est programmé en windows --> plus rapide

voila c'est tout
Afficher les 6 commentaires