1

Rectangle Polygon にテクスチャを描画するのに問題があります。

これが私の現在のコードです。

texture.bind();

        GL11.glBegin(GL11.GL_QUADS);
        GL11.glColor3d(255, 255, 255);
        //Top
        GL11.glTexCoord2f(0,0); GL11.glVertex3f(x1, y1, z1);
        GL11.glTexCoord2f(0,1); GL11.glVertex3f(x1+width, y1, z1);
        GL11.glTexCoord2f(1,1); GL11.glVertex3f(x1+width, y1, z1+length);
        GL11.glTexCoord2f(1,0); GL11.glVertex3f(x1, y1, z1+length);
        GL11.glTexCoord3f(1, 1, 1);
        //Bottom
        GL11.glTexCoord2f(0,0); GL11.glVertex3f(x1, y1+height, z1);
        GL11.glTexCoord2f(0,1); GL11.glVertex3f(x1+width, y1+height, z1);
        GL11.glTexCoord2f(1,1); GL11.glVertex3f(x1+width, y1+height, z1+length);
        GL11.glTexCoord2f(1,0); GL11.glVertex3f(x1, y1+height, z1+length);
        //Front
        GL11.glTexCoord2f(0,0); GL11.glVertex3f(x1, y1, z1);
        GL11.glTexCoord2f(0,1); GL11.glVertex3f(x1+width, y1, z1);
        GL11.glTexCoord2f(1,1); GL11.glVertex3f(x1+width, y1+height, z1);
        GL11.glTexCoord2f(1,0); GL11.glVertex3f(x1, y1+height, z1);
        //Back
        GL11.glTexCoord2f(0,0); GL11.glVertex3f(x1, y1, z1+length);
        GL11.glTexCoord2f(0,1); GL11.glVertex3f(x1+width, y1, z1+length);
        GL11.glTexCoord2f(1,1); GL11.glVertex3f(x1+width, y1+height, z1+length);
        GL11.glTexCoord2f(1,0); GL11.glVertex3f(x1, y1+height, z1+length);
        //Left side
        GL11.glTexCoord2f(0,0); GL11.glVertex3f(x1, y1, z1);
        GL11.glTexCoord2f(0,1); GL11.glVertex3f(x1, y1, z1+length);
        GL11.glTexCoord2f(1,1); GL11.glVertex3f(x1, y1+height, z1+length);
        GL11.glTexCoord2f(1,0); GL11.glVertex3f(x1, y1+height, z1);
        //Right side
        GL11.glTexCoord2f(0,0); GL11.glVertex3f(x1+width, y1, z1);
        GL11.glTexCoord2f(0,1); GL11.glVertex3f(x1+width, y1, z1+length);
        GL11.glTexCoord2f(1,1); GL11.glVertex3f(x1+width, y1+height, z1+length);
        GL11.glTexCoord2f(1,0); GL11.glVertex3f(x1+width, y1+height, z1);
        GL11.glEnd();



ブロックの周りのような薄いもの以外は描画していないようです。これを修正する方法を知っている人はいますか?

4

1 に答える 1

0

テクスチャのサイズは正しいですか? または glBindTexture(GL_TEXTURE_2D, texture.getTextureID()); を使用してみてください。

于 2013-07-08T22:18:01.490 に答える