我正在用OpenGL开发图形项目,并使用freeglut和glew(v1.11.0)。我想用GLUI添加sum UI控件。我下载源代码并使用2012构建它(我尝试了GLUI版本2.35和2.36)。将lib文件添加到我的项目库中,不会遇到麻烦。所以,我现在可以在项目中使用GLUI了。
但在显示控件方面存在一个问题。我试图添加我的GLUI窗口作为我的主窗口的子窗口。添加子窗口、整形等没有问题。此外,我也可以添加控件到子窗口。但是,当我添加它们时,它们不会出现在子窗口。有趣的是,他们其实就在那里。当我点击按钮位置大约,他们有效果,附加回调函数的控制,它调用该函数,并使它的工作。
另外,我尝试了独立的GLUI窗口,而不是子窗口,但是结果是一样的。
这是我的代码:
GLUI* glui_subwin = GLUI_Master.create_glui_subwindow(mainWindowID,GLUI_SUBWINDOW_BOTTOM);
GLUI_Button* b_RotateX = glui_subwin->add_button( "Rotate X", 0, (GLUI_CB)CB_rotate);
glui_subwin->add_column(true);
GLUI_Button* b_RotateY = glui_subwin->add_button( "Rotate Y", 1, (GLUI_CB)CB_rotate);
glui_subwin->add_column(true);
GLUI_Button* b_RotateZ = glui_subwin->add_button( "Rotate Z", 2, (GLUI_CB)CB_rotate);
glui_subwin->add_column(true);
...
glui_subwin->set_main_gfx_window(mainWindowID);
GLUI_Master.set_glutKeyboardFunc(keyboard);
GLUI_Master.set_glutSpecialFunc(NULL);
GLUI_Master.set_glutMouseFunc(mouse);
GLUI_Master.set_glutReshapeFunc(reshape);
GLUI_Master.set_glutIdleFunc(idle);有没有人处理过这个问题,或者谁知道问题出在哪里?
如果你帮我的话,我会很感激的。
发布于 2014-11-22 20:38:21
可能是,你创建了一个OpenGL-3核心配置文件上下文吗?GLUI使用OpenGL-3中不推荐的功能,除非您有兼容上下文,否则它将根本无法工作。还请记住,GLUI不知道着色器,所以如果使用着色器,请记住在使用它们之后禁用它们,否则GLUI最终会尝试使用固定的函数管道…毫无结果。
https://stackoverflow.com/questions/27077116
复制相似问题