begin process at 2012 05 30 00:23:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

OpenGL

 > 

OpenGL avec GLUT please help


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

OpenGL avec GLUT please help

jeudi 7 juillet 2005 à 12:41:31 | OpenGL avec GLUT please help

mondrone

Membre Club
Je viens d'essayer de recopier tel quel un tutorial qu'on m'avait donné sur le net. J'arrive à obtenir ce que je suis censé avoir, pendant environ 1/10 seconde. après le dessin semble se barrer de l'écran en direction du coin en haut à droite à vitesse V avant de disparâitre totalement alors que dans le tuto il n'y a pas d'instruction de mouvement.

Je ne comprend pas....


Pour ceux qui auraient le temps de se pencher sur la question, voila le code, que d'ailleurs certains d'entre vous doivent connâitre puisqu'il est tiré du tuto de Antoine Bouthors. Peut ^tre sont-ce uniquement mes dll qui merdent? Mais je les ai dl dans un pack sur www.orion3d.fr.st donc je pense qu'elle devaient marcher chez le posteur.

merci d'avance :




#include<gl/glut.h>

int WindowName;
double a=0;

void Reshape(int width, int height)
{
   glViewport(0,0,width,height);
   glMatrixMode(GL_PROJECTION);
   glLoadIdentity();
   gluPerspective(
45,
(float)width/(float)height,
0,
100
); //Pour les explications, lire le tutorial sur OGL et win
   glMatrixMode(GL_MODELVIEW); //Optionnel
}

void InitGL(void)
{
}


void Draw()
{




glClear(GL_COLOR_BUFFER_BIT);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_MODELVIEW);
gluLookAt(5,5,5,0,0,0,0,1,0);
glBegin(GL_QUADS);

glVertex3i(1,1,1);
glVertex3i(1,-1,1);
glVertex3i(-1,-1,1);
glVertex3i(-1,1,1);
//1 face

glVertex3i(1,1,-1);
glVertex3i(1,-1,-1);
glVertex3i(-1,-1,-1);
glVertex3i(-1,1,-1);
//2 faces

glVertex3i(1,1,1);
glVertex3i(1,-1,1);
glVertex3i(1,-1,-1);
glVertex3i(1,1,-1);
//3 faces

glVertex3i(-1,1,1);
glVertex3i(-1,-1,1);
glVertex3i(-1,-1,-1);
glVertex3i(-1,1,-1);
//4 faces

glVertex3i(-1,1,-1);
glVertex3i(-1,1,1);
glVertex3i(1,1,1);
glVertex3i(1,1,-1);
//5 faces

glVertex3i(-1,-1,-1);
glVertex3i(-1,-1,1);
glVertex3i(1,-1,1);
glVertex3i(1,-1,-1);
//6 faces
glEnd(); //"Cette fois, j'le sens bien..."

glutSwapBuffers();
//glutSwapBuffers(); pour glut
glutPostRedisplay(); //Uniquement pour GLUT
}



int main( int argc, char *argv[ ], char *envp[ ] )
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH);
glutInitWindowSize(640,480); //Optionnel
WindowName = glutCreateWindow("Ma première fenêtre OpenGL !");
glutFullScreen(); //Optionnel

glutReshapeFunc(Reshape);
glutDisplayFunc(Draw);
InitGL();

glutMainLoop();

return 0;

}
jeudi 7 juillet 2005 à 17:16:00 | Re : OpenGL avec GLUT please help

asmanur

manque un glLoadIdentity avant gluLookAt pour réinitialiser la matrice sinon tu enchaines mvt sur mvt
jeudi 7 juillet 2005 à 19:46:39 | Re : OpenGL avec GLUT please help

mondrone

Membre Club
effectivement ca vas mieux.
Par cotre, nouveau problème du coup. Dans la suite du tuto, la fonction InitGL devient :

void InitGL(void)
{glEnable(GL_DEPTH_TEST);
glEnable(GL_COLOR_MATERIAL);
}

Or quand je met ça (en fait même avant) l'affichage déconne, alors qu'il est dit que c'est censé le stabiliser.
En fait je suis censé obtenir o final un cube avec des faces de différentes couleures, mais moi g des faces qui manquent et d'autres qui sont troncquées.

S que quelqu'un saurait me dire pkoi ? Please !
jeudi 7 juillet 2005 à 19:52:43 | Re : OpenGL avec GLUT please help

mondrone

Membre Club
Je vien de faire le test : même si je n'affiche qu'une face à la fois, avec ou sans le glenable(gl_depth_test) la face s'affiche mal, enfin ca dépend de la face, mais certaines faces avant n'affichent qu'un triangle !
jeudi 7 juillet 2005 à 19:55:26 | Re : OpenGL avec GLUT please help

asmanur

hum hum
glClear(GL_COLOR_BUFFER_BIT);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
t'es sur d'avoir bien copier collé ??
j'opterais pour
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glClearColor(0.0,0.0,0.0,0.0);
mais je suis pas sur que ce soit sa tu pourrais remettre le code en entire et indiquez l'adresse du tuto stp?
jeudi 7 juillet 2005 à 21:14:33 | Re : OpenGL avec GLUT please help

mondrone

Membre Club
voila la page ou j'en suis dans le tuto (bien sur il faut aussi se rapporter aux chapitres précédents, mais je ne suis pas très avancé pour le moment

Sinon, le code en entier :

#include<gl/glut.h>

int WindowName;
double a=0;

void Reshape(int width, int height)
{
   glViewport(0,0,width,height);
   glMatrixMode(GL_PROJECTION);
   glLoadIdentity();
   gluPerspective(
45,
(float)width/(float)height,
0,
100
); //Pour les explications, lire le tutorial sur OGL et win
   glMatrixMode(GL_MODELVIEW); //Optionnel
}

void InitGL(void)
{glEnable(GL_DEPTH_TEST);
glEnable(GL_COLOR_MATERIAL);
}


void Draw()
{




glClear(GL_COLOR_BUFFER_BIT);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(5,5,5,0,0,0,0,1,0);
glBegin(GL_QUADS);

glColor3d(1,0,0);
glVertex3i(1,1,1);
glVertex3i(1,-1,1);
glVertex3i(-1,-1,1);
glVertex3i(-1,1,1);
//1 face

glColor3d(0,1,0);
glVertex3i(1,1,-1);
glVertex3i(1,-1,-1);
glVertex3i(-1,-1,-1);
glVertex3i(-1,1,-1);
//2 faces

glColor3d(0,0,1);
glVertex3i(1,1,1);
glVertex3i(1,-1,1);
glVertex3i(1,-1,-1);
glVertex3i(1,1,-1);
//3 faces

glColor3d(0,1,1);
glVertex3i(-1,1,1);
glVertex3i(-1,-1,1);
glVertex3i(-1,-1,-1);
glVertex3i(-1,1,-1);
//4 faces

glColor3d(1,1,0);
glVertex3i(-1,1,-1);
glVertex3i(-1,1,1);
glVertex3i(1,1,1);
glVertex3i(1,1,-1);
//5 faces

glColor3d(1,0,1);
glVertex3i(-1,-1,-1);
glVertex3i(-1,-1,1);
glVertex3i(1,-1,1);
glVertex3i(1,-1,-1);
//6 faces
glEnd(); //"Cette fois, j'le sens bien..."

glutSwapBuffers();
//glutSwapBuffers(); pour glut
glutPostRedisplay(); //Uniquement pour GLUT
}



int main( int argc, char *argv[ ], char *envp[ ] )
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH);
glutInitWindowSize(640,480); //Optionnel
WindowName = glutCreateWindow("Ma première fenêtre OpenGL !");
glutFullScreen(); //Optionnel

InitGL();
glutReshapeFunc(Reshape);
glutDisplayFunc(Draw);

glutMainLoop();

return 0;

}

Merci d'avance !
vendredi 8 juillet 2005 à 07:06:10 | Re : OpenGL avec GLUT please help

asmanur

il manque glClearColor comme je l'ai dit avant et mets ton couple LookAt+LoadIdentity avant le premier glClear sinon a parrt ca je vois rien d'autre
vendredi 8 juillet 2005 à 11:34:28 | Re : OpenGL avec GLUT please help

mondrone

Membre Club
Merci de la réponse mais ca n'as rien modifié.

Voila ce que j'obtient.

http://programmer.free.fr/opengl.jpg

Sachant que dans le tutos ils cherchent a faire afficher un cube.

S que C possible que ce soit a cause de DEV-C++ ? g deja pu remarquer dans certains cas qu'il faisait des trucs bizzars !

Ou alors mal config ?
vendredi 8 juillet 2005 à 18:33:32 | Re : OpenGL avec GLUT please help

mondrone

Membre Club
Pkoi le fait de mettre glBegins(GL_QUADS); me fait un carré dans le cas de :

glColor3d(1,0,0);
glVertex3i(1,1,1);
glVertex3i(1,-1,1);
glVertex3i(-1,-1,1);
glVertex3i(-1,1,1);

et me fait un triangle dans le cas de :

glColor3d(0,0,1);
glVertex3i(1,1,1);
glVertex3i(1,-1,1);
glVertex3i(1,-1,-1);
glVertex3i(1,1,-1);

Qqun pourrai-il m'expliquer please ?
vendredi 8 juillet 2005 à 18:39:16 | Re : OpenGL avec GLUT please help

mondrone

Membre Club
Et quand je remet je DEPTH_TESTn le 1° me fait un triangle et le deuxième rien du tout ?????????

1 2

Cette discussion est classée dans : int, faces, gl, glut, glvertex3i


Répondre à ce message

Sujets en rapport avec ce message

pb de Z-buffer ac openGL -> Help! [ par Arnaud16022 ] bonjour tt le monde!quelqun pourrait me dire pourqoui le Z-buffer marche pas?pasque le dernier (4ème) triangle dessiné apparait tjs au dessus, meme s' affiche .tga opengl/c++/glut [ par gimli123 ] Bonjour, ça ne compile pas(je compile avec visual studio.net 2003) et je ne sais pas pourquoi, je suis debutant ça serait sympas de m'aider merci beau Errreur [ par RM50Man ] Mon code ne marche pas: Le compilateur devcpp me met build error 1 #include /* contient déjà et */ #include #include #include void reset Problème avec les polygones [ par nisaloncaje ] Bonjour, j'ai le code source suivant : #include #include double a=0,inca=0.1; /* Prototype des fonctions */void affichage();void clavier(unsigned Glut et Open GL [ par Fireflect ] Bonsoir ou bonjours ;) Vous allez rire mais je suis encore un *** de plus qui va croire qu'il est cappable de faire un moteur 3D de qualité enfin j'a PB POUR LA GESTION MULTIFENETRES [ par algeros ] Voici un code ://////////////////////////////////////////////////////////////////                                                          //   Name: message erreur access violation [ par beautyordi ] bonjour a tous Je suis débutant et je souhaite juste lancer une fenêtre vierge avec glut j'ai recopier le code de mon bouquin voila mon code: [code=cp probleme de selection dans opengl [ par oswa ] bonjour, svp j'ai besoin d'un aide urgent. en effet, j'ai realiser un programme en c++ qui utilise opengl. ce programme permet de dessiner plusieurs pikcing opengl [ par znb ] J 'ai fait un code et ça marche très bien; il détecte les couleurs des objets. Mais je veux que, pour une valeur particulière de la couleur, dessiner problèmes ds mon prog [ par wildTiger ] salut tt le mondeje veux dessiner des points en cliquant par la souris sur ma fenêtre. mais mon prog ne marche pas. est ce que qlq'1 peut m'aider?voic


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,337 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales