如何使用GLUT/OpenGL绘图功能在屏幕上绘制文本字符串?
有两种方法可以用GLUT绘制字符串
glutStrokeString将以3D形式绘制文本
替代文字http://local.wasp.uwa.edu.au/~pbourke/oldstuff/glut/opengl4.gif
和glutBitmapString将绘制面向用户的文本
(来源:sourceforge.net)
如果你不喜欢按照epatel的答案使用GLUT附带的内置笔划字体或位图字体,你将不得不推出自己的解决方案.
NeHe有一些很好的教程(以及完整的示例代码):
第13课 - 位图字体
第14课 - 大纲字体
第15课 - 纹理映射的轮廓字体
void RenderString(float x, float y, void *font, const char* string, RGB const& rgb) { char *c; glColor3f(rgb.r, rgb.g, rgb.b); glRasterPos2f(x, y); glutBitmapString(font, string); }
你可以这样称呼它;
RenderString(0.0f, 0.0f, GLUT_BITMAP_TIMES_ROMAN_24, "Hello", RGB(1.0f, 0.0f, 0.0f));