begin process at 2012 05 29 00:04:43
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Linux

 > 

OpenGL

 > 

Cube rotatif sur commande en OpenGL


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

Cube rotatif sur commande en OpenGL

samedi 27 mars 2010 à 16:50:10 | Cube rotatif sur commande en OpenGL

Yoshiji

Bonjour,

Tout d'abord, je suis sous windows Seven 64, codant sous Code::Blocks.
J'ai un projet à faire dans le cadre de mes études :
Un cube en C en utilisant la libraire SDL ou OpenGL, au choix.
J'ai choisis l'OpenGL car c'est plus simple, et moi & le C, ça fait deux

Bref ! Je me dois de constituer un cube, 6 faces de différentes couleurs, qui "tourne" vers le haut lorsque j'appuie sur la flèche du haut, vers la droite lorsque j'appuie sur la flèche de droite, etc..

Seulement, je n'ai absolument aucune idée de comment faire mon cube. J'ai déjà installé l'OpenGL, qui s'est installée avec plusieurs autres librairies apparemment, comme GLFW, Irrlicht, Ogre, GLUT, QT4, et j'en ai peut être loupée une ou deux autres. J'ai tenté en vain depuis plusieurs jours à afficher divers exemples en OpenGL, et le seul que je puisse voir correctement sans erreur est celui qui est codé par défaut lorsqu'on ouvre un nouveau projet en OpenGL (soit un triangle multicolore qui tourne sur lui même).

Si vous pouviez m'aider à commencer, ou bien si vous êtes au courant d'un tutoriel qui pourrai m'aider, je vous en serai très reconnaissant !

Merci d'avance et bonne fin de journée
samedi 27 mars 2010 à 17:13:50 | Re : Cube rotatif sur commande en OpenGL

Yoshiji

Un exemple d'erreur qui revient souvent par exemple :
Code c :
C:/Users/Math/Documents/Training/main.c:69: undefined reference to `_auxInitDisplayMode@4'
C:/Users/Math/Documents/Training/main.c:70: undefined reference to `_auxInitPosition@16'
C:/Users/Math/Documents/Training/main.c:71: undefined reference to `_auxInitWindowA@4'
C:/Users/Math/Documents/Training/main.c:73: undefined reference to `_auxReshapeFunc@4'
C:/Users/Math/Documents/Training/main.c:74: undefined reference to `_auxMainLoop@4'


Je ne sais pas comment régler ce problème, une idée ?
samedi 27 mars 2010 à 17:15:52 | Re : Cube rotatif sur commande en OpenGL

Yoshiji

J'oubliais, mon programme qui ne marche pas à cause de ces erreurs :
Code c :
#include <windows.h>
#include <gl\gl.h>
#include <gl\glaux.h>
#include <math.h>
#define largeur 250
#define hauteur 250

GLfloat clipHeight;
GLfloat clipWidth;
void setupRC()
{
            glClearColor(0.0f, 0.0f, 0.0f, 1.0f );
            glShadeModel(GL_SMOOTH);
            //glShadeModel(GL_FLAT);
            glFrontFace(GL_CW);
            glEnable(GL_DEPTH_TEST);
}

void CALLBACK Main_part(void)
{
            glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
            glBegin(GL_POINTS);
                       glVertex2f(-10.0f,-10.0f);
            glEnd();
            glColor3f(1.0f,0.0f,1.0f);
            glBegin(GL_LINES);
                       glVertex3f(-10.0f,-10.0f,-50.0f);
                       glVertex3f(100.0f,100.0f,50.0f);
            glEnd();
            glBegin(GL_TRIANGLES);                        //la ligne coupe le triangle et est partiellement cachée
                       glColor3f(0.0f,1.0f,0.0f);
                       glVertex3f(0.0f,130.0f,0.0f);

                       glColor3f(0.0f,0.0f,1.0f);
                       glVertex3f(0.0f,0.0f,0.0f);
                       glColor3f(1.0f,0.0f,0.0f);
                       glVertex3f(130.0f,0.0f,0.0f);
            glEnd();
            glFlush();
}

void CALLBACK Reshape(GLsizei w, GLsizei h) //si il y a un changement de taille de la fenetre ...
{
            GLfloat Near = -100.0f;
            GLfloat Far = 100.0f;
            if (h == 0) h = 1;
            glViewport(0,0,w,h);
            glMatrixMode(GL_PROJECTION);
            glLoadIdentity();
            if (w<=h)
            {
                       clipWidth  = (GLfloat)largeur * h/w;
                       clipHeight = (GLfloat)hauteur;
            }
            else
            {
                       clipWidth = (GLfloat)largeur;
                       clipHeight = (GLfloat)hauteur * w/h;
            }
            glOrtho( -clipWidth/2, clipWidth/2, -clipHeight/2, clipHeight/2, Near, Far);
            glMatrixMode(GL_MODELVIEW);
            glLoadIdentity();
}

void main(void)
{
            auxInitDisplayMode(AUX_SINGLE | AUX_RGBA | AUX_DEPTH);
            auxInitPosition(100,100,largeur,hauteur);
            auxInitWindow("Test");
            setupRC();
            auxReshapeFunc(Reshape);
            auxMainLoop(Main_part);
}


Obtenu sur un site qui se dit "tutorial à l'opengl".
samedi 27 mars 2010 à 18:29:45 | Re : Cube rotatif sur commande en OpenGL

rt15

Membre Club Administrateur CodeS-SourceS
Bienvenue,

Il te manque une librairie en entrée du lieur (Problème très très classique...). Peut être glaux.lib.
samedi 27 mars 2010 à 18:33:08 | Re : Cube rotatif sur commande en OpenGL

Yoshiji

Heum, comment résoudre cela ? Car je ne sais vraiment pas comment faire
samedi 27 mars 2010 à 18:35:34 | Re : Cube rotatif sur commande en OpenGL

rt15

Membre Club Administrateur CodeS-SourceS
Project->Build Options->Linker settings->add
samedi 27 mars 2010 à 18:42:46 | Re : Cube rotatif sur commande en OpenGL

Yoshiji

J'ai mis libglaux.a, seulement, j'obtiens ce message d'erreur :
" Le point d'entrée de procédure auxInitWindowsA est introuvable dans la bibliothèque de liens dynamiques GLAUX.DLL "
samedi 27 mars 2010 à 19:33:35 | Re : Cube rotatif sur commande en OpenGL

rt15

Membre Club Administrateur CodeS-SourceS
Utilise dependency walker pour diagnostiquer le problème. La dll glaux.dll ne contient pas le symbol pourtant promis par libglaux.a... Est ce que la version de glaux.dll correspond bien à libglaux ?
samedi 27 mars 2010 à 21:22:33 | Re : Cube rotatif sur commande en OpenGL

Yoshiji

Où puis-je savoir la version du libglaux.a ?
dimanche 28 mars 2010 à 10:29:46 | Re : Cube rotatif sur commande en OpenGL

rt15

Membre Club Administrateur CodeS-SourceS
Heu... Aucune idée. Visiblement elle est fournie avec C::B. Mais la dll non. Donc je ne sais pas où tu as eu la dll mais il y a un risque de décalage. Peut être que tu as eu un autre libglaux.a fourni avec la dll ? Si oui, c'est plutôt celle-là qu'il faut mettre en entrée du lieur.

Mais visiblement, aux est très déconseillée (Voir "What is the AUX library?" sur cette page)

1 2

Cette discussion est classée dans : projet, commande, opengl, cube, rotatif


Répondre à ce message

Sujets en rapport avec ce message

Camera Opengl [ par sniperfou ] Salut a tous,j'ai un probleme avec opengl car je voudrais faire tourner ma camera autour d'un cube mais je ne connait pas les fonctions qui permettent commande unix avec c++? [ par fatrak ] Salut, pourriez-vous m'aider? Mon problème c'est que j'ai tout un projet en langage C(sous UNIX) et je doit utiliser ce projet pour faire un autre pro Projet OpenGl [ par barraq ] salut,Voila j'ai un projet a faire pour ma fac, je doit réaliser tout un environement 3d en opengl .Je doit pouvoir me deplacer dans une map donnée et debutant en openGL... [ par dletozeun ] bonjour,J'ai remarqué qu'avec opengl on peut deplacer le repere avec glTranslatef() ce qui est tres pratique....Mais j'ai remarqué aussi qu'avec glRot Opengl: fonctions add substract [ par acx01b ] Bonjour, je n'ai pas un niveau excellent en Opengl donc je m'en remets à vous pour me conseiller: j'aimerais essayer d'implémenter un logique de "a Fenetre openGL avec Windows Forms !! [ par narutokun66 ] Bonjour, voila je travail sur un projet avec l'OpenGL sous Visual C++ 2008 et maintenant je veux construire une interface , j'ai fait une recherche e Besoin d'aide projet OpenGL/GLUT [ par fox81 ] Bonjour a tous,Je vous présente mon problème, je doit faire un projet C++ avec Visual utilisant les bibliothèques OpenGL et Glut. Le but de ce projet, OpenGL figé [ par keselbingo ] Bonsoir à tous, Je viens de lire les dix pages de sujets sur OpenGL du forum, et je n'ai rien trouvé qui ressemble à ce que j'ai, je soumets donc mon projet openGL/SDL [ par rihabMMEW ] Slm3, svp, je suis en train de réaliser un projet sdl/opengl. j'ai rencontré un p'tit problème dont j'ai besoin de solution : ça affiche "cannot find


Nos sponsors


Sondage...

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 : 0,671 sec (3)

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