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

Archive C/C++

 > 

Archives

 > 

OpenGL

 > 

ouverture de fichier de texture en .BMP


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

ouverture de fichier de texture en .BMP

dimanche 7 avril 2002 à 15:49:09 | ouverture de fichier de texture en .BMP

steph76

Membre Club
voila je developement en ce moment mon moteur3d pour 1 jeux.
Le probleme c'est la fonction d'ouverture de fichier.BMP. Elle fonctionne trés bien sur la texture que j'avais trouver avec la texture mais quand je fait mes propre texture sous gimp, bas ça merdouille (je precise que j'ai essayer plus de texture, même taille, même poid...) rien à faire.



int LoadBMP(char *File)
{
unsigned char *Data;
FILE *fichier;
unsigned char Header[0x36];
GLuint DataPos,DataSize;
GLint Components;
GLsizei Width,Height;
GLenum Format,Type;
GLuint Name[1];
fichier = fopen(File,"rb");if (!fichier) return -1;
if (fread(Header,1,0x36,fichier)!=0x36) EXIT;
if (Header[0]!='B' || Header[1]!='M') EXIT;
if (CTOI(Header[0x1E])!=0) EXIT;
if (CTOI(Header[0x1C])!=24) EXIT;
DataPos = CTOI(Header[0x0A]);
DataSize = CTOI(Header[0x22]);
Width = CTOI(Header[0x12]);
Height = CTOI(Header[0x16]);
Type = GL_UNSIGNED_BYTE;
Format = GL_RGB;
Components = 3;
if (DataSize==0) DataSize=Width*Height*Components;
if (DataPos==0) DataPos=0x36;
fseek(fichier,DataPos,0);
Data = new unsigned char[DataSize];
if (!Data) EXIT;
if (fread(Data,1,DataSize,fichier)!=DataSize)
{
delete Data;
fclose(fichier);
return -1;
}
fclose(fichier);
unsigned char t;
for (int x=0;x<Width*Height;x++)
{
t=Data[x*3];
Data[x*3]=Data[x*3+2];
Data[x*3+2]=t;
}
glPixelStorei(GL_UNPACK_ALIGNMENT,1);
glGenTextures(1, Name);
glBindTexture(GL_TEXTURE_2D, Name[0]);
glTexImage2D
(
GL_TEXTURE_2D,
0,
Components,
Width,
Height,
0,
Format,
Type,
Data
);
return Name[0];
}



quelqu'un peut-il m'aider?


Cette discussion est classée dans : fichier, data, header, texture, datasize


Répondre à ce message

Sujets en rapport avec ce message

LoadTGA() probleme ! [ par Dante41 ] Voila, pour mon jeu en 2D avec OpenGL j'utilise la fonction loadTGA(): bool LoadTGA(char *filename, UINT * uTex){ unsigned char TGAheader[12] = {0, lecture d'un fichier txt et affichage (SOS) [ par malouve ] bonjour,j'ai 2 gros pbsle premier est que je n'arrive pas à lire correctement un fichier txt qui se presente sous la forme d'un tableau à 9 colonnes e écriture d'un bmp [ par khayyam ] salut, j'essaie d'écrire des fichiers bmp mais j'ai quelques soucis#define CTOI(C) (*(int*)&C) #define largeur 100#define hauteur 100int main(int ar header d'un fichier wav [ par delfare ] voila, apres avoir exporte le son wav d'un fichier avi(avec la lib vfw), j'ai remarque qu'il ne fonctionnait pas avec tous les lecteurs : ca marche av fonction de recuperation de couleur rgb [ par Alucards ] Salut tout le monde , j'utilise des loader de texture bmp/ jpg/ tga/ pcx et ceci me cree une texture au format unsigned byte* data[largeurimage * hau Question pour les cracks !! [ par spiky31 ] Bonjour J'ai une question difficile a mon avis mais je vais quand meme essayer : Quand je lit le header d'un fichier mp3 pour connaitre son bitrate retranscription fichier imprimante [ par KON666 ] Bonjour,J'ai un appareil de mesure actuellement relié sur une imprimante et au lieu de l'imprimante je l'ai relié à mon pc via le port parallèle et j' problème d'affichage [ par hamoudito ] voilà comment j'enregistre mon fichier et ce que j'aurai besoin de le faire c'est d'afficher le résultat qui se trouve dans ce fichier par "run", ou b tableau appelé par deux application [ par aymen87 ] Bonjour J'ai un fichier header.h dans ce fichier j'ai déclaré buffer[100] -dans une première application console win32 j'ai fait #include "header.h" Vérifier un header de fichier... [ par MorZong ] Salut,Voilà j'ai créer un programme (simple, pas avec API) de cryptage tout simple et je voudrais qu'il ait sont propre genre de fichier. Alors j'ai m


Nos sponsors


Sondage...

Comparez les prix

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 : 1,092 sec (3)

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