今天碰到了的问题如下,
在程序里调用:
printf("%s.\r\n", glGetString(GL_VERSION));总是输出(null).
glGetIntegerv(GL_MAX_TEXTURE_SIZE, &max)得不到max的值。
答:在MFC情况下,那就只有在成功调用wglMakeCurrent()后再调用glGetString(GL_VERSION)才可以返回正确的值。
如果在非MFC情况下,在glGetString之前,先调用glutInit与glutCreateWindow,就可以返回正确的值。
问题的本质原因都是在于:在你调用这些gl函数之前,你需要初始化渲染的上下文(rendering context)!!!
可以参考:http://tech.groups.yahoo.com/group/opengl-gamedev-l/message/10613
原帖:http://topic.csdn.net/u/20090724/16/c00268be-7575-4985-b946-5a478891aafb.html