Bonjour,
J'utilise le tutorial de nehe.gamedev.net dans sa version GameGlut suivant :
http://nehe.gamedev.net/data/lessons....asp?lesson=10
Mais j'ai legerement modifie le code pour pouvoir charger une liste de textures plutot qu'une et a chaqe fois je file la largeur de la texture. Or si celle ci fait 256 comme dans l'exemple, cela fonctionne bien, mais pas 1000...
Je remets ici la fonction de chargement de l'image.
Qu'est-ce qui peut faire que l'image apparait blanche a l'ecran ?
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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 bool load_rgb_image(const char* file_name, int w, int h, RGBIMG* refimg) { GLuint sz; // Our Image's Data Field Length In Bytes FILE* file; // The Image's File On Disk long fsize; // File Size In Bytes GLubyte* p; // Helper Pointer // Update The Image's Fields refimg->w = (GLuint) w; refimg->h = (GLuint) h; sz = (((3*refimg->w+3)>>2)<<2)*refimg->h; refimg->data = new GLubyte [sz]; if (refimg->data == NULL) return false; // Open The File And Read The Pixels file = fopen(file_name , "rb"); if(!file) return false; fseek(file, 0L, SEEK_END); fsize = ftell(file); if (fsize != (long)sz) { fclose(file); return false; } fseek(file, 0L, SEEK_SET); p = refimg->data; while (fsize > 0) { fread(p, 1, 1, file); p++; fsize--; } fclose(file); return true; }
Partager