仅渲染文本FTGL,Op​​enGL的一部分

时间:2012-11-26 12:30:50

标签: c++ opengl text fonts ftgl

我正在使用FTGL库在我的C ++项目中呈现文本。

我可以使用以下方法轻松呈现文字:

CFontManager::Instance().renderWrappedText(font, lineLength, position, text);

不幸的是,存在这样一种情况,即显示文本的Button被部分隐藏,因为它调整了容器的大小。我可以毫无问题地绘制Button的背景以适应容器,但是我对使用文本执行相同操作时遇到了问题。是否有可能以某种方式仅绘制给定宽度的文本,其余的只是忽略?

这是一个显示我问题的屏幕:

Problem with drawing only a part of text

正如您所看到的,正在正确绘制按钮“单击此处”,但我不能对“单击此处”文本执行相同操作。

1 个答案:

答案 0 :(得分:1)

您可以尝试使用glScissor,如下所示:

glEnable(GL_SCISSOR_TEST);
glScissor(windowPosition.x, windowPosition.y, windowWidth, windowHeight);
// here put your draw method of your window and objects inside it
glDisable(GL_SCISSOR_TEST);

更多信息:http://www.opengl.org/sdk/docs/man/xhtml/glScissor.xml