0

テクスチャと OpenGL に少し問題があります。小さな .obj ローダー (テクスチャ ロードあり) を作成しましたが、すべてが青色で描画されます。例:

テクスチャをロードします。テクスチャを GL11.glBindTexture(GL11.GL_TEXTURE_2D,textureId) でバインドします。私が行った場合:

    glColor3f(1f,1f,1f);
    glBegin(GL_QUADS);
    glVertex3f(50f,0,-50);
glVertex3f(-50f,0,-50f);
glVertex3f(-50f,0,50f);
glVertex3f(50f,0,50f);
glEnd();
    GL11.glBindTexture(GL11.GL_TEXTURE_2D, textureId);

白いクワッドを描画します...しかし、そうすると:

    GL11.glBindTexture(GL11.GL_TEXTURE_2D, textureId);
    glColor3f(1f,1f,1f);
    glBegin(GL_QUADS);
    glVertex3f(50f,0,-50);
glVertex3f(-50f,0,-50f);
glVertex3f(-50f,0,50f);
glVertex3f(50f,0,50f);
glEnd();

青いクワッドを描画し、他のすべても青です。

多分誰かが解決策を知っていますか?

4

2 に答える 2

1

を使用してテクスチャ座標を指定していないため、テクスチャはありませんglTexCoord2f

へのパラメータが正しくないため、色が間違っている可能性がありますglTexImage

すべてに同じテクスチャを使用しているため、他のすべては青色です。別のテクスチャをバインドするか、デフォルトのテクスチャ 0 を使用します。

于 2012-06-26T11:27:05.033 に答える
0

これは、各頂点でglTexCoord2fを使用していないために問題になります。現在、色がすべての領域にバインドされていないため、これを解決できるため、各頂点でこれを試してください。

于 2012-06-26T11:31:38.963 に答える