openglのテクスチャリングに奇妙な問題があります:
このシーンは、4つのテクスチャ付き二次曲面(床と3つの壁)で構成されるオープンボックスと、それぞれ翻訳、スケーリング、テクスチャ化されたgluSpheresから作られたいくつかの粗いキノコで構成されています。
特に床を見ると、二次曲面の半分のテクスチャが大きく歪んでいることがわかります。床のテクスチャ座標を3回チェックしましたが、問題はないようです(ご覧のとおり、他の3つの壁は問題なく、床と同じパターンに従います)。これは、私が使用するすべてのテクスチャで発生します(RAW RGBデータを使用しているだけです)。
きのこをシーンから外すと、反りがなくなります。本当に奇妙です。誰かがこれを見たことがありますか?私はopenglに比較的慣れていないので、これを見たときに何を探すべきかわかりませんでした。前もって感謝します。
編集:
ボックスのコード:
void drawRoom(void) {
glPushMatrix();
glScalef(10,10,10);
GLuint texture = LoadTextureRAW("cave_two.raw",1);
glEnable(GL_TEXTURE_2D);
glBegin(GL_QUADS);
//Floor
glVertex3f(-1,-1,-1); glTexCoord2f(0,0); glNormal3f(0,1,0);
glVertex3f(1,-1,-1); glTexCoord2f(1,0); glNormal3f(0,1,0);
glVertex3f(1,-1,1); glTexCoord2f(1.0,1.0); glNormal3f(0,1,0);
glVertex3f(-1,-1,1); glTexCoord2f(0.0,1.0); glNormal3f(0,1,0);
//Back wall
glVertex3f(-1,-1,-1); glTexCoord2f(0,0); glNormal3f(0,0,1);
glVertex3f(1,-1,-1); glTexCoord2f(1,0); glNormal3f(0,0,1);
glVertex3f(1,1,-1); glTexCoord2f(1.0,1.0); glNormal3f(0,0,1);
glVertex3f(-1,1,-1); glTexCoord2f(0.0,1.0); glNormal3f(0,0,1);
//Right wall
glVertex3f(1,1,1); glTexCoord2f(0,0); glNormal3f(-1,0,0);
glVertex3f(1,-1,1); glTexCoord2f(1,0); glNormal3f(-1,0,0);
glVertex3f(1,-1,-1); glTexCoord2f(1.0,1.0); glNormal3f(-1,0,0);
glVertex3f(1,1,-1); glTexCoord2f(0.0,1.0); glNormal3f(-1,0,0);
//Left wall
glVertex3f(-1,1,1); glTexCoord2f(0,0); glNormal3f(1,0,0);
glVertex3f(-1,-1,1); glTexCoord2f(1,0); glNormal3f(1,0,0);
glVertex3f(-1,-1,-1); glTexCoord2f(1.0,1.0); glNormal3f(1,0,0);
glVertex3f(-1,1,-1); glTexCoord2f(0.0,1.0); glNormal3f(1,0,0);
glEnd();
glDisable(GL_TEXTURE_2D);
glDeleteTextures( 1, &texture );
glPopMatrix();
}