如何在C ++中使用GLUT / OpenGL绘制文本?

问题描述 投票:22回答:4

如何使用GLUT / OpenGL绘图功能在屏幕上绘制文本字符串?

c++ opengl text glut
4个回答
25
投票

有两种方法可以用GLUT绘制字符串

glutStrokeString将以3D形式绘制文本

alt text (来源:uwa.edu.au

glutBitmapString将绘制面向用户的文本

alt text (来源:sourceforge.net


7
投票

如果你不喜欢按照epatel's answer的GLUT附带的内置笔划字体或位图字体,你将不得不推出自己的解决方案。

NeHe有一些很好的教程(以及完整的示例代码):


6
投票
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));

3
投票

这通常有点讨厌,而不是直截了当。尝试使用此工具:

http://students.cs.byu.edu/~bfish/glfontdl.php

© www.soinside.com 2019 - 2024. All rights reserved.