Opengl Quads无法渲染

时间:2012-06-10 20:36:38

标签: java opengl render lwjgl quad

这是有问题的代码:

glColor3f(1,1,1);
for(int x=0;x<125;x++){
    for(int y=0;y<10;y++){

        int p = levelArray[x][y];
        if(p == 0){
            break;
        }
        Texture t = pieces[1];
        t.bind();
        System.out.println(x*64+"|"+y*64 + " :: "+((x*64)+t.getTextureWidth())+"|"+((y*64)+t.getTextureHeight()));
        glBegin(GL_QUADS);
            glTexCoord2f(0,0);
            glVertex2f(x*64,y*64);
            glTexCoord2f(1,0);
            glVertex2f((x*64)+t.getTextureWidth(),y*64);
            glTexCoord2f(1,1);
            glVertex2f((x*64)+t.getTextureWidth(),(y*64)+t.getTextureHeight());
            glTexCoord2f(0,1);
        glEnd();    
    }
}

我正在打印出来,所以我到达了glBegin,我已经获取了打印输出的样本坐标,并在此处显示的第一个上面的线上绘制了四边形,使用完全相同的纹理并渲染。

1 个答案:

答案 0 :(得分:3)

您只有三个glVertex2f调用,其中您应该有四个(在GL_QUADS内)。 你有四个glTexCoord2f,所以这必须是代码中的type-o。