字体显示为实心矩形,使用slick2d / opengl

时间:2013-11-28 01:50:15

标签: java opengl slick2d

学习3d java编程,我已经构建了一个基于块的3d世界地图(minecraft-clone课程)。我已经加载了纹理以正确渲染块边。

我正在尝试向屏幕显示调试文本(我在2D游戏中做得很好)。但是,文本使用块的纹理显示,或者显示为完全黑色 - 没有文本。

我尝试了十几种防止纹理被使用的变体,但没有解决上述问题。

在绘制文本之前使用:

    GL11.glDisable(GL11.GL_DEPTH_TEST);
    GL11.glMatrixMode(GL11.GL_PROJECTION);
    GL11.glPushMatrix();
    GL11.glLoadIdentity();
    GL11.glOrtho(0, Display.getWidth(), Display.getHeight(), 0, 1, -1);
    //glDisable(GL_TEXTURE_2D);
    //GL11.glBindTexture(GL11.GL_TEXTURE_2D, 0);
    GL11.glMatrixMode(GL11.GL_MODELVIEW);
    GL11.glPushMatrix();
    GL11.glLoadIdentity();

    arialPlain.drawString(20, 20, "ON BLOCK:" + strBlock, Color.black);

    // Restore the state of the projection mode
    GL11.glMatrixMode(GL11.GL_PROJECTION);
    GL11.glPopMatrix();

    // Restore the state of the model view mode
    GL11.glMatrixMode(GL11.GL_MODELVIEW);
    GL11.glPopMatrix();
    GL11.glEnable(GL11.GL_DEPTH_TEST);

    glEnable(GL_TEXTURE_2D);

文本总是呈现为黑色(我选择的任何字体颜色)矩形,不显示任何实际文本字符。

0 个答案:

没有答案