当前位置:  开发笔记 > 编程语言 > 正文

使用GLUT位图字体

如何解决《使用GLUT位图字体》经验,为你挑选了1个好方法。

我正在编写一个OpenGL使用的简单应用程序GLUT.我不想滚动自己的字体渲染代码,而是想使用附带的简单位图字体GLUT.让他们工作的步骤是什么?



1> Ashwin Nanja..:

使用GLUT位图字体在OpenGL中很容易进行简单的文本显示.这些是简单的2D字体,适合 3D环境中显示.但是,它们非常适合需要覆盖在显示窗口上的文本.

以下是在GLUT窗口上以绿色显示Eric Cartman最喜欢的报价的示例步骤:

我们将在屏幕坐标中设置光栅位置.因此,设置用​​于2D渲染的投影和模型视图矩阵:

glMatrixMode(GL_PROJECTION);
glPushMatrix();
glLoadIdentity();
gluOrtho2D(0.0, WIN_WIDTH, 0.0, WIN_HEIGHT);

glMatrixMode(GL_MODELVIEW);
glPushMatrix();
glLoadIdentity();

设置字体颜色.(现在设置,不迟.)

glColor3f(0.0, 1.0, 0.0); // Green

设置应显示文本的窗口位置.这是通过在屏幕坐标中设置光栅位置来完成的.窗口的左下角是(0,0).

glRasterPos2i(10, 10);

设置字体并使用glutBitmapCharacter显示字符串字符.

string s = "Respect mah authoritah!";
void * font = GLUT_BITMAP_9_BY_15;
for (string::iterator i = s.begin(); i != s.end(); ++i)
{
    char c = *i;
    glutBitmapCharacter(font, c);
}

恢复矩阵.

glMatrixMode(GL_MODELVIEW);
glPopMatrix();

glMatrixMode(GL_PROJECTION);
glPopMatrix();

推荐阅读
360691894_8a5c48
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有