Java 加载纹理后TextRenderer绘制不正确

Java 加载纹理后TextRenderer绘制不正确,java,opengl,jogl,Java,Opengl,Jogl,我使用TextRenderer(com.jogamp.opengl.util.awt.TextRenderer)将文本绘制到屏幕上,但是在加载一些纹理(否则可以正常工作)后,文本不再是文本,而是我加载的其中一个纹理的一小部分 我像这样加载纹理 gl2.glBindTexture(GL.GL_TEXTURE_2D, unit); gl2.glPixelStorei(GL.GL_UNPACK_ALIGNMENT, 1); gl2.glTexParameteri(GL.GL_T

我使用TextRenderer(com.jogamp.opengl.util.awt.TextRenderer)将文本绘制到屏幕上,但是在加载一些纹理(否则可以正常工作)后,文本不再是文本,而是我加载的其中一个纹理的一小部分

我像这样加载纹理

    gl2.glBindTexture(GL.GL_TEXTURE_2D, unit);
    gl2.glPixelStorei(GL.GL_UNPACK_ALIGNMENT, 1);
    gl2.glTexParameteri(GL.GL_TEXTURE_2D, GL.GL_TEXTURE_WRAP_S, GL2.GL_CLAMP);
    gl2.glTexParameteri(GL.GL_TEXTURE_2D, GL.GL_TEXTURE_WRAP_T, GL2.GL_CLAMP);
    gl2.glTexParameteri(GL.GL_TEXTURE_2D, GL.GL_TEXTURE_MAG_FILTER, GL.GL_LINEAR);
    gl2.glTexParameteri(GL.GL_TEXTURE_2D, GL.GL_TEXTURE_MIN_FILTER, GL.GL_LINEAR);
    gl2.glTexEnvf(GL2.GL_TEXTURE_ENV, GL2.GL_TEXTURE_ENV_MODE, GL.GL_REPLACE);
    gl2.glTexImage2D (GL.GL_TEXTURE_2D, 0, GL.GL_RGBA, getWidth(), getHeight(), 
            0, GL.GL_RGBA, GL.GL_UNSIGNED_BYTE, pixMap.getData());
    gl2.glEnable(GL.GL_TEXTURE_2D);
    pixMap.dispose();
    pixMap = null;

为什么会发生这种情况?

我对班瑟评论的评论。看上面


我没有使用glGenTextures,因为我想控制纹理的参考编号,我想我知道我在做什么lol。是的,当然,字体正在将纹理加载到GPU中,然后我将其覆盖,谢谢你向我指出这一点。

你是用
glGenTextures
生成纹理的吗?看起来您已将图像加载到用于字体的纹理。确保你没有绑定你没有生成的纹理。我没有使用glGenTextures,因为我想控制纹理的参考编号,我想我知道我在做什么lol。是的,当然,字体正在将纹理加载到GPU中,然后我将其覆盖,谢谢你向我指出这一点。