1

我目前正在开发一个涉及创建 3D 对象(例如盒子和球体)的引擎。我的下一个任务是在内部创建 3D 文本作为对象。我在 Windows 7 计算机上使用 C++ 中的 Visual Studio 2012、OpenGL、Qt、FreeType2 和 FTGL。

我已经能够很好地导入所有内容并渲染一些东西,但不是我想要的方式。如果我创建一个框,文本会跳转到我创建的框。如果我创建另一个,它会跳转到那个。如果我移动相机,它会跳到场景的中心。最重要的是,我的字符串中的所有字母都出现在彼此的顶部,我无法定位它们。

我想要的是让文本位于我告诉它的任何 3D 位置,并让它留在屏幕上(所以要渲染多个字符串),并且让字母实际上能够造词。我也尝试过使用 glRasterPos3f 来移动它,但它仍然保持锁定在它所在的任何对象上。我已经尝试了很多来获得一个不错的结果,但我一直遇到同样的事情。请让我知道问题可能是什么。这是我如何渲染它的示例:

glPushMatrix();
FTExtrudeFont* font = new FTExtrudeFont("Arial.ttf");
font->Depth(.5);
font->FaceSize(10);
glRasterPos3f(10,10,10);
font->Render("Text");
glPopMatrix();
4

0 回答 0