是否可以在opengl和后退中从“vbo模式”切换到立即模式?
调试时,我发现更容易去glBegin(...)而不是设置vaos,vbos等。
在我的init()函数中,有这个:
if (!(GLEW_ARB_vertex_shader && GLEW_ARB_fragment_shader))
{
Log::instance() << "glsl not ready.\n";
return false;
}
是否启动着色器状态并且意味着我无法返回固定功能管道?
编辑: 我的初始化:
int main(int argc, char** argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA | GLUT_MULTISAMPLE);
glutInitWindowSize(1600,900);
glutInitWindowPosition(200, 50);
glutCreateWindow("OpenGL4");
glutIgnoreKeyRepeat(0);
glutKeyboardUpFunc(keyboardUp);
glutSpecialFunc(specialKeyboard);
glutSpecialUpFunc(specialKeyboardUp);
glutSetCursor(GLUT_CURSOR_NONE);
...
GLenum result = glewInit();
if(result != GLEW_OK) {
Log::instance() << "glewInit() error.\n";
return false;
}
if (!(GLEW_ARB_vertex_shader && GLEW_ARB_fragment_shader))
{
Log::instance() << "glsl not ready.\n";
return false;
}
//opengl stuff
glEnable(GL_DEPTH_TEST);
glEnable(GL_CULL_FACE);
glClearColor(0.15f, 0.15f, 0.15f, 1.0f);
}