lodePNG を使用して png ファイルからテクスチャをロードしていますが、テクスチャをロードするとプログラムがクラッシュします。
char* filename = "texture.png";
unsigned width, height;
std::vector<unsigned char>image;
GLuint texture[1];
//decode
unsigned error = lodepng::decode(image, width, height, filename);
if(error) std::cerr << "decoder error " << error << ": " << lodepng_error_text(error) << std::endl;
glBindTexture(GL_TEXTURE_2D, texture[0]);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0,
GL_RGBA, GL_UNSIGNED_BYTE, &image[0]);
VS 2010 を使用してコンパイルしましたが、エラーはありませんが、glTexImage2D を呼び出すとクラッシュが発生します。私のシステムは Windows 7 で、グラフィック カードで OGL 3.3 をサポートしています。
私は Mac OSX 10.6 という別のシステムを持っており、常にコードを移植していますが、Mac ではまったく問題はありません。Windows でテクスチャが正しく読み込まれるようにするための修正案はありますか?
lodePNG ファイルを入手したサイトは次のとおりです: http://lodev.org/lodepng/