Hi,
ich versuche momentan, devIL in meinem OGL Projekt anzubinden. Version: 1.7.8
Dazu habe ich zum Texturenladen folgende Methode erstellt:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
void CTexture::LoadTexture(ILstring pvsFileName)
{
ILuint lvoTexID;
bool lvbSuccess = false;
ilGenImages(1, &lvoTexID);
ilBindImage(lvoTexID);
lvbSuccess = ilLoadImage(pvsFileName);
if (lvbSuccess)
{
ilConvertImage(IL_RGBA, IL_UNSIGNED_BYTE);
mvoWidth = ilGetInteger(IL_IMAGE_WIDTH);
mvoHeight = ilGetInteger(IL_IMAGE_HEIGHT);
glGenTextures(1, &mvoTexture);
glBindTexture(GL_TEXTURE_2D, mvoTexture);
glTexImage2D(GL_TEXTURE_2D, 0, ilGetInteger(IL_IMAGE_BPP), ilGetInteger(IL_IMAGE_WIDTH), ilGetInteger(IL_IMAGE_HEIGHT), 0, ilGetInteger(IL_IMAGE_FORMAT), GL_UNSIGNED_BYTE, ilGetData());
ilDeleteImages(1, &lvoTexID);
}
}
|
Aufruf folgendermaßen:
|
C-/C++-Quelltext
|
1
|
lvoTexture->LoadTexture(L"joo.png");
|
Beim Starten der App wird folgendes ausgeführt:
|
C-/C++-Quelltext
|
1
2
3
4
|
ilInit();
ilutInit();
// ilUT initialisieren
ilutRenderer(ILUT_OPENGL);
|
Ich sehe, dass ilLoadImage() immer false zurückgibt, obwohl das Bild existiert. Was mache ich falsch?
Fehler lautet: "invalid extension - could not open file"
Kann es am wchar_t* liegen (typedef ILstring), wenn ja, wie lässt sich das umgehen?
Habe dazu mal std::wstring genommen - er bringt leider immer noch diese Fehlermeldung.
Grüße