begin process at 2012 02 07 09:49:45
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

OpenGL

 > DÉMO 3D EN OPENGL

DÉMO 3D EN OPENGL


 Information sur la source

Note :
10 / 10 - par 1 personne
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :OpenGL Niveau :Débutant Date de création :30/10/2004 Date de mise à jour :17/11/2004 21:48:18 Vu / téléchargé :7 152 / 580

Auteur : Quicky24

Ecrire un message privé
Commentaire sur cette source (55)
Ajouter un commentaire et/ou une note

 Description

Mon code représente un cube tournant une sphère avec éclairage si vous n'arrivez pas à éxecuter le prog prenez glut32.dll


 Conclusion

encore une mise à jour en sachant que glutPostRedisplay(); sert à afficher les figures!

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

07 novembre 2004 17:24:48 :
j'ai rajouté des commandes: - t pour activer la transparence et T pour désactiver, - b activer brouillard et B désactiver, - l pour la lumière L désactiver, - q pour sortir
17 novembre 2004 21:48:19 :
j'ai mis des commentaires enfin je crois je l'ai mis vite fait sur le ZIP.

 Sources du même auteur

Source avec Zip Source avec une capture PETITE DÉMO OPENGL/C++ AVEC FPS

 Sources de la même categorie

Source avec Zip Source avec une capture AFFICHER DES COURBES DE BEZIER par shorzy
Source avec Zip Source avec une capture BASE/MOTEUR 3D EN QT/OPENGL (COMPLET ET FONCTIONNEL!) POUR U... par envi33
Source avec Zip Source avec une capture CLASSE AVEC OPENGL - OBJETS 3D ET ANIMATIONS par rasta63
Source avec Zip Source avec une capture LETTRES 3D AVEC OPENGL ET QT par opossum_farceur
Source avec Zip CUBE 3D GLUT32 VC++ ET DEVC++ par bobby03

Commentaires et avis

Commentaire de Quicky24 le 30/10/2004 14:40:12

Bon bah j'éspère que vous allez aimer, je débute en OpenGL alors soyez pas trop durs.

Commentaire de Gendal67 le 30/10/2004 16:15:04

Euh, dsl, j'arrive pas a compiler...et les DLL ne m'aime pas ...(ou en tt cas, elle n'aime pas Dev-C++) :((, tu linkes cmt ton truc ? J'ai hate de voir ce que c'est! Surtout que je n'y connais rien en Open GL mais j'adore voir les autres faire des merveilles :-))

Allez, a++

Gendal67, à votre service !

Commentaire de dletozeun le 30/10/2004 23:47:50

Gendal> pour faire mercher son prog : tu créé un nouveau projet avec devcpp tu supprime la sourcemise par defaut, puis tu rajoutes la source de quicky24

Pour linker tu mets(a la barbare) ;) :

libglaux.a
libglu32.a
libglut32.a
libglut.a

avec ca t'es sur de pas avoir de linker error!!!

et la dll dans le zip faut la renomer glut.dll a la place de glut32.dll  ^^

voila

Quicky24> ta demo c'es seulement un cube qui tourne autour d'une sphere? je pensais qu'il y aurait du brouillard vu ce qu'il a dans ta source...

En tt cas ta source est une bonne idée ! C'est bien un truc pas compliqué et court pour debuter en openGL

Commentaire de Kirua le 31/10/2004 12:44:56

sous Dev-C++ on a coutume de remplacer 'lib' par l et de ne pas mettre l'extension, puis de mettre un - devant chaque lib, comme ça:

-lglaux
-lglu32
-lglut32
-lglut

et puis faut pas oublier:
-lopengl32

Commentaire de dletozeun le 31/10/2004 13:46:50

oui mais dasn le dossier lib de devcpp ils sont pas ecrit comme ca
Et puis -lopengl32 est mis par defaut en creant un nouveau projet openGL sous devcpp

Commentaire de djl le 31/10/2004 13:51:50

-l... n'est pas specifique a devcpp, c'est pour dire au linker gcc (ld) d'ajouter lle binaire correspondant

Commentaire de Arnaud16022 le 31/10/2004 22:49:35

pourquoi tu rajoutes glut?????????
dletozeun -> "un truc pas compliqué et court " : c'est la cas de le dire...
Par contre, la source est suffisamment courte pour voir qu'il a bel et bien du brouillard... touche 'b'. d'ailleurs, une fois qu'il est mis on ne peut plus l'enlever :(

mais je suis d'accord avec toi, cette source peut etre utile aux débutants, mais dans ce cas faut bourrer de commentaires.
ya une question dans le forum sur les quadrique (hein funto :) )ca pourrait aider

Commentaire de Arnaud16022 le 31/10/2004 22:50:48

woups dsl ya gourrancec c'est pas des quadrique...
glutSolidCube...
ca aurait pu...

Commentaire de Quicky24 le 01/11/2004 12:52:55

slt à tous,
pour bien linker ma source il faut mettre:
-lopengl32 -lglu32 "chemin de la lib jusqu'à libglu32.a"
-lglut32 "pareil pour libglut32.a" et pis voilà ou alors je vous mets le Dev projet.
Merci de vos commentaires mais pour le brouillard j'ai mis glDisable ce qui désactive le brouillard :-)
quicky24

Commentaire de dizzy le 01/11/2004 18:55:14

problème : il y a des erreurs dans ta demo.
Sinon je te demande avec quel compilateur tu as compilé ce prog.

Commentaire de dletozeun le 01/11/2004 20:31:27

Sinon pour enlever le brouillard suffit de rajouter:

case 'n':
  glDisable(GL_FOG);
  break;

dans le switch(key)

Commentaire de Arnaud16022 le 01/11/2004 21:24:36

ou encore, dans le case 'b'
if (glIsEnabled(GL_FOG)){...}
else{...}

le c++ est plein de ressources ! (ben c'est pour ca qu'on l'utilise, non? :) )

Commentaire de Quicky24 le 03/11/2004 15:32:55

slt
dizzy> j'ai DevC++ 4.9.7.0 comme IDE.
Arnaud16022> je ne connais pas tout l'OpenGL non plus.
Qui sait afficher les FPS et mettre à la meme vitesse
à tous les ordis?
quicky24

Commentaire de Arnaud16022 le 03/11/2004 17:02:09

rien de plus simple.
(j'exagere ;) )
tu calcules la différence de temps qu'il y a entre 2 frames (chaque frame, pas une seule fois!), et tu passes ca comme argument a chaque fonction.
pour le FPS, ben ya qu'a compter combien t'as affiché en 1 sec (!)
pour afficher, le plus simple c'est dee le mettre dasn la bare de titre, mais gare a la chute du fps!

sion, direction nehe ou digiben.

Commentaire de Quicky24 le 03/11/2004 20:57:47

Arnaud tu peux m'indiquer un code source pour le fps ou alors un site oû il y a un code sans win32.

Commentaire de LordBob le 05/11/2004 13:07:04

salut, j'aimerais bien tester ton app... mais g pas la possibilité de compiler le code source... pourrais-tu mettre l'exe avec le zip stp?

Commentaire de Arnaud16022 le 05/11/2004 18:11:48

bah le code est court, tu peux pas t'imaginer ca que ca fait?
mais perso je trouve aussi qu'on devrait tjs mettre des sources compilables...

Commentaire de Quicky24 le 07/11/2004 19:18:04

slt je viens de mettre à jour
@++

Commentaire de Arnaud16022 le 07/11/2004 19:47:23

UN TIMER!!!!

c'est bien comme ca mais j'ai du ouvrir 4 fois le programme (en meme temps) pour avois un fps correct

mais sinon cette source est super pour les débutants. a quand les vertex normals? :)

Commentaire de Quicky24 le 08/11/2004 16:30:35

c'est pour ça Arnaud que j'ai besoin de ce code eh oui!

Commentaire de Arnaud16022 le 08/11/2004 20:23:38

hum en lisant le code je vois qd meme plein de problemes:
void Texture(...): tu n'utilises pas de textures!
e+=2 : tu utilises le timer de glut, mais tu ne passes pas la valeur de ce timer a tes fonctions, cee qui fait que le timer ne sert a rien
glNewList(2,GL_COMPILE_AND_EXECUTE): tu crées une liste a chaque frame sans jamais les supprimer. une seule fois suffit (sinon ca servirait a rien!)
glutSwapBuffers(); glutPostRedisplay(): etonnant...pour moi on utilise soit l'un soit l'autre pas les deux...
void Touches(): a quoi ca sert d'avoir 2 fonctions pour le clavier? la premiere fait tout et celle-la rien...
void Temps(int valeur)
{
valeur = 60;
}: je ne me souviens plus comment marche le timer de glut mais a mon avis, ca ca sert a rien...
return 0: étonnant que le compilo ne gueule pas, le type de main() est void et tu retournes un int
et puis t'as une série de defines en commentaires qu'il sertai bon de virer dans la version que tu postes...

hop,hop, une maj...

Commentaire de Kirua le 08/11/2004 22:39:35

"return 0: étonnant que le compilo ne gueule pas, le type de main() est void et tu retournes un int"

hum hum. si le compilo devait gueuler, ce serait plutôt sur le fait que main soit déclaré void!! main en C++ est TJS de type int, sinon t'es pas ANSI (ou ISO, je m'y perds ds ces standards...)

Commentaire de screamX le 08/11/2004 23:03:31

euh moi c'est bizzar...
quand j'execute le .exe tous fonctionnent mais quand je me le compile : lors de l'execution il fait "OPENGL.dll introuvable" le boulet ! j'ai opengl32.dll !! ca suffit pas ?

Commentaire de Arnaud16022 le 08/11/2004 23:37:14

kirua: pour dev c++ je sé plus j'ai plus l'habitude, mais VC++, lorsque tu déclares une fonction sans type de retour, te met un warning mais compie qd meme sans erreurs en te disant qu'il a compris que le type était void. maintenant, pour dev...Sinon, tu es d'accord avec moi sur tout ce que j'ai dit?

ScreamX: c'et pas un .exe, c'est un .scr (meme si ca change rien dans le fond)
c'est zarbi ton truc...le prog fourni dans la source marche?

Commentaire de screamX le 09/11/2004 07:19:18

Arnaud>>ben il compile...en rajoutant include de gl/gl.h...je link avec gult.lib et gult32.lib et opengl32.lib
mais ca y est : y a une fonction "gluPerspective(pcv,rapport,devant,derriere);" mais ca c'est pas du glut ?? ni de l'openGL ?? et moi je crois que je n'ai pas de glu.lib ...
AAAAAAH j'ai trouvé des lib libglu32.a et libglaux.a et avec ça s'a link c'est quoi c'est lib ??

Commentaire de Kirua le 09/11/2004 07:54:04

glu ce sont les GL Utilities, ça te permet de faire des gluOrtho, gluLookAt etc... (pas sur pr ortho). c'est très usité.
glaux est une VIEILLE librairie de gestion de textures notamment. je la déteste perso... Nehe s'en sert.

Commentaire de Arnaud16022 le 09/11/2004 19:15:34

qd tu crées une dll comme les concepteurs d'openGL on bien du le faire ;) , le compilateur crée un fichier .dll (!!!) et un fichier .lib ou .a qui est plus ou moins un header précompilé; en gros t'en a besoin sinon le .h de la dll fera référence a des fonction qui de seront implémentées nulle part

Commentaire de Kirua le 09/11/2004 20:04:30

c'est pour ainsi dire une description du contenu de la DLL qui permet au compilateur de TON programme de savoir quelles fonctions sont définies (et comment) dans la DLL. cela permet au compilo de comprendre qu'il ne dois pas chercher gluLookAt(...) dans ton code à toi: c'est dans la DLL, et ce sera appelé dynamiquement au Run Time.

Commentaire de Quicky24 le 18/11/2004 16:21:31

Voilà voilou MAJ de cette démo
quicky24

Commentaire de Arnaud16022 le 18/11/2004 20:24:47

L' EXE EN RELEASE!
quelle est l'utilité de ca:
void Touches(int key,int x,int y)
{switch(key){
  case GLUT_KEY_DOWN: break;
    case GLUT_KEY_UP: break;}}
??????????????????????????
rien hein?
toujours pas de timer
Temps() ne sert a rien
...mais sinon c'est bien mieux!!!!

Commentaire de Quicky24 le 20/11/2004 20:43:04

les touches servaient à faire tourner quelque chose individuellement mais ça ne tournait pas individuellement. Et je voudrais savoir comment faire pour afficher le nombre  de Frames Par Seconde et limiter pour que ça tourne à la même vitesse sur toutes les machines.
Merci
Quichy24

Commentaire de Arnaud16022 le 20/11/2004 22:04:51

il faut pas limiter. seul le V-sync limite le fps, mais ca c'est une autre histoire.
pour afficher le fps, je te déconseille fortement la methode de digiben: l'afficher dans le titre de l'application, ca fait chuter le fps de facon impressionnante...
mieux vaut l'afficher a l'écran, voir les liens sur ma source (spheremapped outlined fonts), c'est expliqué.
le principe du fps c'est que tu mesures le temps entre chaque frame avec time() (ou mieux, cette fonction est nulle mais pour ca ca suffit) . tu passes ce delta_Temps a toutes tes fonctions, et tu incrémentes tes compteurs avec un multiple de cette valeur.
pas tres clair tout ca? un exemple:
long tps=0.0f,lasttps=0.0f;
main(){
while(1){
fps();
dessine(deltaT);
}}

fps(){
tps=time();
deltaT+=tps-lasttps;
frames++;
lasttps=tps;
}
dessine(deltaT){
counter+=deltaT*3.5;
glRotatef(counter,0,1,0);
Draw();
}

et voila pour le principe des fps, pour l'aficher cf les sources de digiben.

Commentaire de Quicky24 le 28/11/2004 15:42:30

slt tt le monde je voudrai le code OpenGL pour le timer pour afficher le nombre de frames.
quicky24

Commentaire de Arnaud16022 le 28/11/2004 15:52:57

bah je te dis, digiben l'a fait, ya qu'a copier-coller...
enfin bon.


void CalculateFrameRate()
{
    currentTime = SDL_GetTicks() * 0.001f;                
    FPS++;
    TPF=currentTime - lastFrameTime ;
lastFrameTime=currentTime;
if(currentTime - lastTime>= 1.0f )
    {
        lastTime = currentTime;
FPStoDisp=FPS;
        FPS = 0.0;
    }
}

Commentaire de Quicky24 le 01/12/2004 17:25:43

non mais ce que je veux c'est que ça soit 100% OpenGL ou GLUT et non SDL ou Win32.
quicky24

Commentaire de Kirua le 01/12/2004 18:06:51

utilise l'en-tête <ctime> alors, avec clock()

Commentaire de Quicky24 le 07/12/2004 22:17:45

comment on s'en sert pour les fps?
quicky24

Commentaire de Kirua le 07/12/2004 23:44:22

si tu as tps_prec le temps mesuré à la frame précédente (avec clock()), les FPS sont de CLK_TCK / (clock() - tps_prec).

CLK_TCK vaut habituellement 1000 (ce qui veut dire qu'il y a 1000 ticks par seconde, càd qu'un tick vaut 1 ms)

Commentaire de Quicky24 le 08/12/2004 16:19:50

c'est quoi le code ? parce que je ne sais pas me servir de CLK_TCK.

Commentaire de Kirua le 08/12/2004 17:15:46

CLK_TCK c'est juste une constante numérique.

#include <ctime>
#include <iostream>
#include <cstdlib>

int main()
{
   unsigned int tps = clock();
   System("pause");
   cout << "Temps écoulé: " << ((clock() - tps)/CLK_TCK) << " secondes." << endl;
   System("pause");
   return 0;
}


je sais plus si c'est System ou system...
ça enregistre le temps au démarrage du programme dans tps, demande d'appuyer sur enter, et affiche le temps qui s'est écoulé entre le démarrage du programme et l'appui sur enter.

Commentaire de Arnaud16022 le 08/12/2004 17:18:32

ouah mais t'es tro relou toi http://www.gametutorials.com/download/Ports/OpenGL/Camera2_SDL.zip, et je t'avais déja filé le lien plus haut.

Commentaire de Kirua le 08/12/2004 17:28:41

c'est parce qu'il t'a répondu ça:

"non mais ce que je veux c'est que ça soit 100% OpenGL ou GLUT et non SDL ou Win32."

alors ben voilà, tu l'as en C++ standard.

Commentaire de Arnaud16022 le 08/12/2004 17:48:50

et alors? je vois pas ce que ca chance. ya juste a remplacer SDL_getticks() pas clock(), c'est pas mortel

Commentaire de Kirua le 08/12/2004 17:55:06

bah, il avait pas compris c'est tout, c'est pas la mort non plus ^^

Commentaire de Quicky24 le 08/12/2004 21:37:41

merci kirua et il est bien ton Particle Engine à moins que ça ne soit pas toi...
quicky24

Commentaire de Quicky24 le 09/12/2004 20:46:52

Kirua: mais comment on fait pour mettre en FPS avec GLUT_ELAPSED_TIME et ce que tu m'as mis?
quicky24

Commentaire de Kirua le 09/12/2004 23:34:16

http://www.lighthouse3d.com/opengl/glut/index.php3?fps

google, premier lien en tappant glut elapsed time, faut pas pousser qd même hein :)

Commentaire de mat1eu le 11/03/2005 00:37:57

bonsoir je viens de voir la source et je n'arrive pas a compiler je suis sur dev c++ 4.9.9.1, j'ai linker comme c expliquer un peu plus haut mais il me met ce message :

Compilateur: Default compiler
Building Makefile: "C:\Dev-Cpp\project\open_gl\Makefile.win"
Exécution de  make...
make.exe -f "C:\Dev-Cpp\project\open_gl\Makefile.win" all
g++.exe -c demo.cpp -o demo.o -I"C:/Dev-Cpp/include/c++/3.3.1"  -I"C:/Dev-Cpp/include/c++/3.3.1/mingw32"  -I"C:/Dev-Cpp/include/c++/3.3.1/backward"  -I"C:/Dev-Cpp/lib/gcc-lib/mingw32/3.3.1/include"  -I"C:/Dev-Cpp/include"  

Commentaire de dletozeun le 11/03/2005 22:16:04

Je ne parle pas le langage de devcpp mais moi il fait toujours des trucs comme ca a la compilation...

Il ne semble pas se plaindre dasn l'extrait que nous montre...donc a mon avis il faut que tu sois un plus plus precis

Commentaire de Kirua le 11/03/2005 22:48:29

J'ai hésité à le dire mais, en effet, aucun message d'erreur dans ce que tu nous montre, je suis formel.

Commentaire de mat1eu le 12/03/2005 21:36:00

Bonsoir je suis desole je ne vous avais pas mis le
message en entier donc voila ce que le log du compil me
donne comme info et je pense que c'est un message d'
erreur.
Merci pour le temps que vous passez a m'aider!!!

Compilateur: Default compiler
Building Makefile: "C:\Dev-Cpp\project\open_gl\Makefile.win"
Exécution de  make...
make.exe -f "C:\Dev-Cpp\project\open_gl\Makefile.win"
all
g++.exe -c demo.cpp -o demo.o
-I"C:/Dev-Cpp/include/c++/3.3.1"  
-I"C:/Dev-Cpp/include/c++/3.3.1/mingw32"  
-I"C:/Dev-Cpp/include/c++/3.3.1/backward"  
-I"C:/Dev-Cpp/lib/gcc-lib/mingw32/3.3.1/include"  
-I"C:/Dev-Cpp/include"  


In file included from demo.cpp:1:
Demo.h:1:21: GL/glut.h: No such file or directory

In file included from demo.cpp:1:

Demo.h:7: error: syntax error before `=' token
In file included from demo.cpp:2:
Temps.h: In function `void Temps()':
Temps.h:10: error: `cout' undeclared (first use this
function)
Temps.h:10: error: (Each undeclared identifier is reported
only once for each
   function it appears in.)
demo.cpp: In function `void Activations()':
demo.cpp:6: error: `GL_DEPTH_TEST' undeclared (first use
this function)
demo.cpp:6: error: `glEnable' undeclared (first use this
function)
demo.cpp:7: error: `GL_LESS' undeclared (first use this
function)
demo.cpp:7: error: `glDepthFunc' undeclared (first use
this function)
demo.cpp:8: error: `GL_FOG' undeclared (first use this
function)
demo.cpp:9: error: `GL_LIGHTING' undeclared (first use
this function)
demo.cpp:10: error: `GL_LIGHT0' undeclared (first use this
function)
demo.cpp:11: error: `GL_COLOR_MATERIAL' undeclared
(first use this function)
demo.cpp:12: error: `GL_SRC_ALPHA' undeclared (first
use this function)
demo.cpp:12: error: `GL_ONE' undeclared (first use this
function)
demo.cpp:12: error: `glBlendFunc' undeclared (first use
this function)
demo.cpp: At global scope:

demo.cpp:15: error: syntax error before `=' token
demo.cpp: In function `void Initialisation(int, int)':
demo.cpp:19: error: `glViewport' undeclared (first use this
function)
demo.cpp:20: error: `GL_PROJECTION' undeclared (first use this function)
demo.cpp:20: error: `glMatrixMode' undeclared (first use
this function)
demo.cpp:21: error: `glLoadIdentity' undeclared (first use
this function)
demo.cpp:22: error: `pcv' undeclared (first use this
function)

demo.cpp:22: error: `rapport' undeclared (first use this
function)
demo.cpp:22: error: `devant' undeclared (first use this
function)
demo.cpp:22: error: `derriere' undeclared (first use this
function)
demo.cpp:22: error: `gluPerspective' undeclared (first use
this function)
demo.cpp:23: error: `GL_MODELVIEW' undeclared (first
use this function)


demo.cpp: In function `void Brouillard()':
demo.cpp:29: error: `GL_FOG_COLOR' undeclared (first
use this function)
demo.cpp:29: error: `glFogfv' undeclared (first use this
function)
demo.cpp:30: error: `GL_FOG_MODE' undeclared (first use
this function)
demo.cpp:30: error: `GL_EXP2' undeclared (first use this
function)
demo.cpp:30: error: `glFogi' undeclared (first use this
function)
demo.cpp:31: error: `GL_FOG_DENSITY' undeclared (first
use this function)
demo.cpp:31: error: `glFogf' undeclared (first use this
function)
demo.cpp:32: error: `GL_FOG_START' undeclared (first use
this function)
demo.cpp:33: error: `GL_FOG_END' undeclared (first use
this function)


demo.cpp: In function `void Demo()':
demo.cpp:38: error: `GL_COLOR_BUFFER_BIT' undeclared
(first use this function)
demo.cpp:38: error: `GL_DEPTH_BUFFER_BIT' undeclared
(first use this function)
demo.cpp:38: error: `glClear' undeclared (first use this
function)
demo.cpp:39: error: `glClearColor' undeclared (first use
this function)
demo.cpp:40: error: `glMatrixMode' undeclared (first use
this function)
demo.cpp:44: error: `glPushMatrix' undeclared (first use
this function)
demo.cpp:45: error: `glTranslated' undeclared (first use
this function)
demo.cpp:47: error: `glColor3f' undeclared (first use this
function)
demo.cpp:48: error: `m' undeclared (first use this
function)
demo.cpp:48: error: `p' undeclared (first use this function)


demo.cpp:48: error: `glutSolidSphere' undeclared (first use this function)
demo.cpp:49: error: `glPopMatrix' undeclared (first use this function)
demo.cpp:54: error: `glRotated' undeclared (first use this function)
demo.cpp:82: error: `glutSwapBuffers' undeclared (first use this function)
demo.cpp:83: error: `glutPostRedisplay' undeclared (first use this function)

demo.cpp: In function `void Clavier(unsigned char, int, int)':

demo.cpp:90: error: `glEnable' undeclared (first use this function)
demo.cpp:92: error: `glDisable' undeclared (first use this function)
demo.cpp:98: error: `GL_BLEND' undeclared (first use this function)

demo.cpp: In function `void Touches(int, int, int)':
demo.cpp:110: error: `GLUT_KEY_DOWN' undeclared (first use this function)
demo.cpp:114: error: `GLUT_KEY_UP' undeclared (first use this function)
demo.cpp: In function `int main()':
demo.cpp:122: error: `glutInitWindowPosition' undeclared (first use this
   function)
demo.cpp:123: error: `glutInitWindowSize' undeclared (first use this function)
demo.cpp:124: error: `GLUT_RGBA' undeclared (first use this function)
demo.cpp:124: error: `GLUT_DOUBLE' undeclared (first use this function)
demo.cpp:124: error: `GLUT_DEPTH' undeclared (first use this function)

demo.cpp:124: error: `glutInitDisplayMode' undeclared (first use this function)
demo.cpp:126: error: `glutCreateWindow' undeclared (first use this function)
demo.cpp:128: error: `glutReshapeFunc' undeclared (first use this function)
demo.cpp:131: error: `glutKeyboardFunc' undeclared (first use this function)
demo.cpp:132: error: `glutSpecialFunc' undeclared (first use this function)
demo.cpp:133: error: `glutDisplayFunc' undeclared (first use this function)
demo.cpp:135: error: `glutMainLoop' undeclared (first use this function)

make.exe: *** [demo.o] Error 1

Exécution terminée

Commentaire de Arnaud16022 le 12/03/2005 22:20:53

ouah mais la c'est tout le header de gl qui y passe.... et pour cause:
glut.h: no such file
simplement, t'as pas installé de skd de openGL, il est entre autres sur www.belzel.free.fr, faudra mettre les fichiers . h dans le repertoire include/opengl de DevC++, les .lib dans le rep libraries/opengl
ca devrait marcher
++
Arnaud

Commentaire de Kirua le 13/03/2005 01:17:35

non.

les en-têtes du SDK (pas skd) dans le répertoire include/GL et les .a dans le répertoire lib, pas lib/GL.

oublie pas de lier les libs dans les options du projet.

Commentaire de mat1eu le 13/03/2005 02:19:48

je pense que je suis a la masse ce soir g essaye comme
vous me dites mais ya toujours un probleme :

Compilateur: Default compiler
Building Makefile: "C:\Dev-Cpp\project\open_gl\Makefile.win"
Exécution de  make...
make.exe -f "C:\Dev-Cpp\project\open_gl\Makefile.win"
all
g++.exe -c demo.cpp -o demo.o -I"C:/Dev-Cpp/include/c++/3.3.1"  -I"C:/Dev-Cpp/include/c++/3.3.1/mingw32"  -I"C:/Dev-Cpp/include/c++/3.3.1/backward"  -I"C:/Dev-Cpp/lib/gcc-lib/mingw32/3.3.1/include"  -I"C:/Dev-Cpp/include"  -I"C:/Dev-Cpp/include"  -I"C:/Dev-Cpp/include/ddk"  -I"C:/Dev-Cpp/include/GL"  -I"C:/Dev-Cpp/include/GTK"  -I"C:/Dev-Cpp/include/sys"  

In file included from Demo.h:1,
                 from demo.cpp:1:
C:/Dev-Cpp/include/GL/glut.h:50: error: redeclaration of
C++ built-in type `
   wchar_t'

In file included from demo.cpp:2:
Temps.h: In function `void Temps()':
Temps.h:10: error: `cout' undeclared (first use this
function)
Temps.h:10: error: (Each undeclared identifier is reported
only once for each
   function it appears in.)

make.exe: *** [demo.o] Error 1

Exécution terminée

merci encore une fois pour votre aide!

Commentaire de Kirua le 13/03/2005 12:15:21

glut.h:50: error: redeclaration of
C++ built-in type `
   wchar_t'

tu n'as qu'à commenter la ligne de glut.h qui redéfinit wchar_t. ça doit être autour de la ligne 50.

Temps.h:10: error: `cout' undeclared (first use this
function)

soit tu n'as pas inclut <iostream>, soit tu n'as pas mis le using namespace std; mais les using ds les en-têtes sont déconseillés (d'ailleurs comment tu peux avoir du cout dans un .h O_O_O). en tt cas, tu dois remplacer les cout, cin, string, ... par std::... (std::cout par exemple)

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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,967 sec (4)

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