0

lwgjlこの方法で、アプリケーションでOpenGLを初期化します。

glEnable(GL_TEXTURE_2D)
glMatrixMode(GL_PROJECTION)
glLoadIdentity()
glOrtho(0, displayWidth, 0, displayHeight, -1, 1)
glMatrixMode(GL_MODELVIEW)
glClearColor(clearColor.r, clearColor.g, clearColor.b, clearColor.a)

slickライブラリおよびUnicodeFontまたはAngelCodeFont(by )を使用してテキストを描画している場合font.drawString(...)。テキストが描画されています(反転)が、テキストの後ろにある他の画像が点滅しています。

まばたきを避けてテキストを正しく描画する方法は?OpenGLの初期化に問題がある可能性がありますか?私も試してみglDisable(GL_LIGHTING)ましglEnable(GL_BLEND)glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)。何も変わっていません。:(

4

1 に答える 1

0

解決しました!次のコードは私のために働きます:

OpenGLの初期化:

    glDisable(GL_DEPTH_TEST)
    glDisable(GL_LIGHTING)

    glEnable(GL_BLEND)
    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)

テキストを描く:

    glEnable(GL_TEXTURE_2D)
    font.drawString(x, y, text, color)
    glDisable(GL_TEXTURE_2D)
于 2012-05-17T09:14:36.047 に答える