Hey, I'd like to display text in a 2D szenario using JOGL. But I can't figure out开发者_如何学Python, how to rotate text using com.sun.opengl.util.j2d.TextRenderer. It does not have any methods concerning the rotation. So I was expecting the modelview matrix to have an effect on the rotation.
val renderer = new TextRenderer(new Font("SansSerif", Font.BOLD, 36))
[...]
renderer.beginRendering(drawable.getWidth(), drawable.getHeight())
gl.glRotatef(90,0,0,1)
renderer.draw(content, 0, 0)
renderer.endRendering()
Do you know any help?
For me, the following order -- and only the following order -- works:
renderer.beginRendering(...)
glMatrixMode(GL_MODELVIEW)
glPushMatrix()
glRotatef(...)
renderer.draw(...)
renderer.endRendering()
glPopMatrix()
If I so much as switch the order of the last two lines, it stops working. Don't know why.
Call glRotatef before you beginRendering() the text.
Make sure to glMatrixMode(GL_MODELVIEW)
just before calling glRotatef. You don't know what matrix mode the beginRendering method leaves OpenGL in.
精彩评论