2012-11-14 1 views
2

Je vais avoir un problème avec le chargement d'une image avec DIABLE pour openGLDIABLE ilLoad erreur 1285

dans une première partie de mon projet, j'appelle

ilInit(); 

en fonction juste après que j'appelle ma charge tout comme ce

//generate a texture 
ilGenImages(1, &uiTextureHandle); 

//bind our image 
ilBindImage(uiTextureHandle); 

//load 
//ilLoad(IL_PNG, (const ILstring)"fake.png"); 
ilLoad(IL_PNG, "fake.png"); 

pour le bien de suivi d'erreur je l'ai fait place « ilGetError() » après chaque appel qui est revenu 0 pour tous ces sauf pour ilLoad qui retourne 12 Après une recherche, j'ai compris que c'était un manque d'erreur de mémoire.

donc ilLoad retourne toujours 0 et non chargé. Quelqu'un sait ce que je fais mal faire pour mon chargement ou si j'ai oublié de faire quelque chose parce que je pense que je pourrais avoir oublié quelque chose et c'est la raison pour laquelle 1285 apparaît.

+0

Je viens de tester pour voir si je peux charger un autre format d'image mon sujet de test était un ".bmp" et cette charge ne m'a donné aucune erreur –

Répondre

0

Une raison courante pour ilLoad() d'échouer avec IL_OUT_OF_MEMORY est simplement si le fichier PNG que vous utilisez est corrompu.

Cependant, 1285 signifie IL_INVALID_VALUE - cela signifie que le chemin que vous lui donnez est probablement erroné. Essayez un chemin absolu (en vous rappelant que les barres obliques inversées ne sont pas correctes en C++ sauf si vous utilisez des doubles barres obliques).

J'ai personnellement utilisé DevIL pendant un certain temps et je l'ai aimé. Cependant, je vous invite à considérer FreeImage. Il a un peu plus de développement en cours et est assez stable - je l'ai utilisé dans un moteur commercial pour tous mes besoins d'image, et il s'intègre décemment bien avec DirectX/OpenGL tout comme DevIL.

Questions connexes