【发布时间】:2012-03-06 22:18:14
【问题描述】:
我正在制作一个赛车游戏,我想在我的场景屏幕上打印一些信息,例如速度、圈数、键绑定等。我希望它们平放在屏幕上,可以说是固定在相机前面的位置(就像真实游戏中的速度计)而不是在我的场景中 - 如果这不可能,那么我会在我的场景中打印它们。
你知道我可以使用哪些函数(glutBitmapCharacter?)我尝试了 printw,但我的程序无法编译。你有什么建议?
各种例程会打印出多条消息
我已经尝试过了(屏幕上没有显示)
glPushMatrix();
glRasterPos2f(100, 100);
glColor3f(0.0,0.5,0.1);
sprintf(message,"\nLap(User):%d",lapsB);
len = (int) strlen(message);
for (int i = 0; i < len; i++) {
glutBitmapCharacter(GLUT_BITMAP_HELVETICA_18, message[i]);
}
glPopMatrix();
我如何创建菜单的另一件事 - 有什么方法可以使用,用户必须在 3 个条目之间进行选择,仅通过按键盘上的 1 或 2 或 3 输入
【问题讨论】:
-
在 openGL 中渲染文本是一件复杂的事情,有多种解决方案。这个网站之前已经问过很多次了。请参阅此问题以获取详细答案:stackoverflow.com/questions/5262951/… 还取决于您的 openGL 版本,因此很高兴告诉我们您使用的 openGL 版本以及您的目标操作系统
-
这是windows 7下的4.2版本,希腊同胞!
-
发现了一些关于菜单的东西:glutCreateMenu(MenuSelect); glutAddMenuEntry("红色",RED); // 将菜单附加到右键 glutAttachMenu(GLUT_RIGHT_BUTTON);我就用我没有时间的鼠标
-
这也没有字:glutStrokeCharacter(GLUT_STROKE_ROMAN,str[i]);
-
您使用的是核心上下文还是兼容性上下文?
标签: c++ windows opengl text printing