begin process at 2012 05 30 05:41:14
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

OpenGL

 > 

Problèmes de texture


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

Problèmes de texture

mercredi 25 août 2004 à 19:37:03 | Problèmes de texture

asmanur

Bonjour!
J'ai des problèmes de textures avec OpenGL, en effet lorsque j'utilise diverse sources pour charger un bmp et le charger en mémoire. Après lorsque je veux la "coller sur un rectange elle ne s'affiche pas! J'utilise pourtant des images de taille 2^n*2^n
Je programme sous dev C++
mercredi 25 août 2004 à 20:35:23 | Re : Problèmes de texture

gagah1

Membre Club
Est-ce tu peux poster le code? question vague! peut etre tu n'as pas mis glEnable(GL_TEXTURE_2D)???
jeudi 26 août 2004 à 08:24:13 | Re : Problèmes de texture

asmanur

Voici le prog
#include <windows.h>
#include <GL/glut.h>
#include <Gl/gl.h>
#include <stdio.h>
#include <conio.c>

#define w 1024
#define h 860




/*-------------------------FONCTONS-------------------------------------------*/
GLuint id;//id de la texture
void Display();//affiche
void Reshape(int we,int he);//s'occupe de la caméra
GLuint Textures();


GLuint Textures()
{
int Data[12]={1,0,0,//le pointeur sur la texture
0,0,1,
1,0,0,
0,0,1};

glGenTextures(1,&id);
glBindTexture(GL_TEXTURE_2D,id);
glPixelStorei(GL_UNPACK_ALIGNMENT,1);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_T,GL_REPEAT);
glTexImage2D
(
GL_TEXTURE_2D, //target
0, //mipmap level
3, //nb couleurs
1, //largeur
1, //hauteur
0, //largeur du bord
GL_RGB, //type des couleurs
GL_INT, //codage de chaque composante
Data //Image
);
return id;
}
/*---------------------------MAIN---------------------------------------------*/

int main(int argc, char *argv[])
{
id=Textures();

glutInit(&argc,argv);/*on initialise OpenGL*/
glutInitDisplayMode(GLUT_RGBA GLUT_DOUBLE glutInitWindowSize(1024,860);/*la taile de la window*/
glutInitWindowPosition(0,0);
glutCreateWindow("Test pour OpenGL");/*on la crée*/
glutReshapeFunc(Reshape);/*gestionnaires*/
glutDisplayFunc(Display);/*les fonctions*/
glutSpecialFunc(Clavier);
glutIdleFunc(Idle);
//Parametre du blending
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
//activation du blending
glEnable(GL_BLEND);
glutMainLoop(); // lance le gestionnaire glut


}





void Display(){
glClearColor(1,1,1,0);
glClear(GL_COLOR_BUFFER_BIT); // efface le frame buffer

glEnable(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D,id);
glColor4d(0,0,0,0);

glBegin(GL_QUADS);
glTexCoord2f(0,0);
glVertex2d(100,100);
glTexCoord2f(0,1);
glVertex2d(100,200);
glTexCoord2f(0.95,1);
glVertex2d(200,200);
glTexCoord2f(1,0);
glVertex2d(200,100);

glEnd();
glFinish();
glutSwapBuffers();

}
void Reshape(int we,int he)
{

gluOrtho2D(0,we,-he/2,he/2); // définition de la projection
}

Alors celle-ci est une source de mon "crû" mais j'en ai téléchargées des tonnes que je ne réussissait pas à compiler
jeudi 26 août 2004 à 21:48:52 | Re : Problèmes de texture

gagah1

Membre Club
1) dans la fn Texture(): avec glTexImage2D, la taille de l'image doit etre une puissance de 2 . Ici 1x1.
2) dans Display(): glColor4d(0,0,0,0); tu a mis en transparent l'image (ici alpha = 0), alors rien qui s'affiche. plutôt glColor4d(1,1,1,1);
vendredi 27 août 2004 à 14:40:19 | Re : Problèmes de texture

asmanur

Pourtant 1 = 2^0!
C'est normal c'est que déconcerté par l'échec de la texture j'en ai fait une de 1x1 mais j'ai recompilé en corrigeant ca marche tjrs pas !!(bouhhhhhh)
samedi 28 août 2004 à 09:59:23 | Re : Problèmes de texture

asmanur

Merci pour tes réponses mais j'ai trouvé glEnable textures devait aller après la création de la fenêtre ainsi que le chargement de l'image
jeudi 2 septembre 2004 à 00:40:13 | Re : Problèmes de texture

tibur

Membre Club
Je te conseille aussi de checker les erreurs opengl (au moins apres l'init d'opengl, et au debut, a la fin de ta fonction Display)

Tu peut utiliser :

assert(glGetError()==GL_NO_ERROR);

(a besoin d'un bon vieux #include <assert.h>)


tib


Cette discussion est classée dans : utilise, problèmes, charger, texture


Répondre à ce message

Sujets en rapport avec ce message

Charger TGA avec open gl [ par goutbouyo ] Salut,Depuis ce midi j'essaie de charger un fichier TGA et de l'appliquer à une surface mais je n'y arrive.Est ce qu'il existe sous open gl un code si Comment charger une texture non carrée? [ par Slown ] Bonjour. Voila j'ai enfin trouvé un bon tutorial pour le cgargement de bmp. Je voudrai sacoir un truc a present: je veux faire un mini jeu ou l'on dep Problèmes de relation entre les classes [ par Aldarek ] Salut à tous, je vous explique mon problème, j'ai un projet avec pas mal de fichiers et donc de classes et lorsque j'utilise l'une d'entre elle, je me Application de textures [ par mohdaef ] Bonjour, j'utilise OpenGL dans une application 3D, et j'ai un soucis pour appliquer une texture, j'utilise la fonction glTexCoord2d() pour spécifier Problèmes chargement librairies [ par maveryck78 ] Salut à tousJe suis actuellement en train de développper un logiciel pilotant une carte dont la bibliothèque m a été fourni pour Borland et VC++ (avec c++, opengl, charger image pour texture [ par profiter ] bonjour je travaille avec opengl avec visual studio 2010 je dessine une scene en 3D je veux utiliser des images .png ou .jpeg ou .gif comme texture j' probleme execution animation opengl [ par profiter ] bonsoir, dans mon programme opengl c++, j'ai une voiture qui roule sur une route mais alors je la fais rouler d'un pas de 0.1 et au lieu qu'il roule d Help!! Cube 3D + texture [ par lee137 ] Bonsoir! En fait j'essaye de faire une cube 3D qui tourne, avec sur chaque face une texture. En effet je suis débutante en programmation 3D et je pen copier le contenu d'un fichier vers un autre ! [ par goldray ] Bonsoir, je veux copier le contenu d'1 fichier dans 1 autre en passant par l'intermédiaire d'une liste chainée ... mais le soucis que j'ai rencontré charger les donées dans access [ par rmsaiac ] bonjour tt le monde j'ai un programme en code c++ qui est connecté via le port série avec l'automate ,ce programe affiche le nombre des pièces malles


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

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 : 5,008 sec (3)

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