SOIL ライブラリを使用して OpenGL に PNG テクスチャをロードし、GL QUAD でテクスチャを表示しようとしていますが、関数を呼び出すと、画像は正しく読み込まれますが、画面全体の色が変わります!
青い画像の場合、画面は青い顔料に変わります! 赤なら赤に変化!誰がこれを引き起こしているのか知っています
画像がロードされていない正しい色: http://i.stack.imgur.com/OHroq.jpg
読み込まれた画像の色が間違っている: http://i.stack.imgur.com/LyRwJ.jpg
コード:
int LoadGLTextures() {
texture[0] = SOIL_load_OGL_texture("test.png", SOIL_LOAD_AUTO, SOIL_CREATE_NEW_ID,SOIL_FLAG_INVERT_Y);
glBindTexture(GL_TEXTURE_2D, texture[0]);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);}
および正方形のコード:
glBindTexture(GL_TEXTURE_2D, texture[0]);
glBegin(GL_QUADS);
glColor3f(1.0f, 1.0f, 1.0f);
glTexCoord2f(0.0f, 0.0f); glVertex3f(mover, 11.0f, 1.0f);
glTexCoord2f(1.0f, 0.0f); glVertex3f( mover+44,11.0f, 1.0f);
glTexCoord2f(1.0f, 1.0f); glVertex3f(mover+44, 44.0f, 1.0f);
glTexCoord2f(0.0f, 1.0f); glVertex3f(mover, 44.0f, 1.0f);
glEnd();
}