j'essaye désespérément d'ajouter des textures dans mon projet openGl,
mais je devient fou... J'ai écrit une classe qui me permet de charger
des fichiers tga (elle fonctionne). Lors de mon initialisation je cré
donc ma texture:
<hr size= "2" width="100%">CTGAFile* ptgaFile = new CTGAFile("nom de fichier");
J'ai regardé plusieurs tutoriaux, et normalement mon code devrait fonctionner, enfin selon moi...
Le seul moyen que j'ai trouvé pour obtenir des résultat est de refaire
toute l'étape d'initialisation avant chaque rendu, mais c'est pas super
lol... En fait je n'ai pas l'impression que openGl mémorise ce que je
fait avec le glBindTexture...
Le seul moyen que j'ai trouvé pour obtenir des résultat est de refaire toute l'étape d'initialisation avant chaque rendu, mais c'est pas super lol... En fait je n'ai pas l'impression que openGl mémorise ce que je fait avec le glBindTexture...
Cela veut donc dire qu'il y a quelque chose que tu fais lors de l'initialisation que tu ne fais pas ensuite pour ton rendu comme par exemple glEnable(GL_TEXTURE_2D); (besoin que d'un seul appel mais bon c'est pour l'exemple).
J'ai du mal a croire que cela vienne d'OpenGL.
rrk275-> glShadeModel(GL_FLAT); n'a rien avoir avec les textures
L'ordre d'appel entre glEnable(GL_TEXTURE_2D); et glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL); ne change rien du tout, OpenGL est une machine a état, l'ordre est important pour les méthodes de rendu de géométrie...
Merci pour vos réponses... Je viend de trouver d'où viend mon problème:
j'effectuait l'initialisation de la texture avant de faire
glXMakeCurrent(pdisplay, window, context);... Je commençai a devenir
dingue, j'ai trouvé le problème en fesant des printf des id de texture
que me renvoyai openGl... Bref ça marche.
Et oui rien ne vaut un bon debugage avec du printf "en veut tu en voila"
C U Later
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 + 1 = 1, c'est l'harmonie parfaite (citation de J-C Van-Dame)
Vive la logique: 1 ou 1 ça fait bien 1 : pas si fou que ça JC ;)