Bonjour à tous !
J'explique un peu mon problème.
Je voudrais appliquer des textures à mes objets 3d(déjà importés) sous opengl.

Le code ci-dessous est la fonction de chargement des textures pour un modèle 3d :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
QImage t;
QImage b;
 
	for(int i = 0; i < numOfMaterials; i++)
	{
		if ( !b.load( pMaterials[i].strFile,"JPG" ) )
		 {
			 b.fill(Qt::green);
		 }
		 t = QGLWidget::convertToGLFormat( b );
		 glGenTextures( 1, &m_textures[0] );
		 glBindTexture( GL_TEXTURE_2D, m_textures[i] );
		 glTexImage2D( GL_TEXTURE_2D, 0, 3, t.width(), t.height(), 0, GL_RGBA, GL_UNSIGNED_BYTE, t.bits() );
		 glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR );
		 glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR );
	 }
Pour une image Bmp, ça fonctionne impec.
Mais pour un soucis de taille, je souhaiterais le faire avec des images JPG.

Il me semble que l'erreur se trouve au niveau du :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
!b.load( pMaterials[i].strFile,"JPG" )
En mode debug, lorsque j'arrive à ce niveau,je vois bien que l'image ne se charge pas.
Est-ce que c'est un problème de plugin jpg pour Qt ?

Merci d'avance pour vos réponses.