2

嘿,我想使用 JOGL 在 2D 场景中显示文本。但我不知道如何使用 com.sun.opengl.util.j2d.TextRenderer 旋转文本。它没有任何关于旋转的方法。所以我期待模型视图矩阵对旋转产生影响。

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()

你知道有什么帮助吗?

4

3 回答 3

2

对我来说,以下顺序 - 并且只有以下顺序 - 有效:

renderer.beginRendering(...)
glMatrixMode(GL_MODELVIEW)
glPushMatrix()

glRotatef(...)
renderer.draw(...)

renderer.endRendering()
glPopMatrix()

如果我只是切换最后两行的顺序,它就会停止工作。不知道为什么。

于 2011-07-27T23:41:31.817 回答
0

Make sure to glMatrixMode(GL_MODELVIEW) just before calling glRotatef. You don't know what matrix mode the beginRendering method leaves OpenGL in.

于 2010-09-16T17:30:56.020 回答
0

在 beginRendering() 文本之前调用 glRotatef。

于 2010-09-14T15:18:55.080 回答