Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用GLFW创建较低版本的OpenGL上下文_Opengl_Glfw - Fatal编程技术网

使用GLFW创建较低版本的OpenGL上下文

使用GLFW创建较低版本的OpenGL上下文,opengl,glfw,Opengl,Glfw,当很多人来到这里时,都会遇到关于高于3的上下文的问题,我想创建一个较低版本的上下文 我的硬件支持OpenGL 3.3版。我使用glfw3创建了一个OpenGL上下文,它报告说已经创建了v3.3上下文。但是我想检查我的代码是否兼容较低版本,并创建较低版本的上下文 我试过了 或 但版本仍然是3.3 那么,如何使用glfw创建较低版本的上下文呢?或者有没有其他方法来限制OpenGL版本?例如,使用驱动程序设置或环境变量。仅供参考:OpenGL-2不支持OpenGL调试上下文此处GLFW的行为良好。

当很多人来到这里时,都会遇到关于高于3的上下文的问题,我想创建一个较低版本的上下文

我的硬件支持OpenGL 3.3版。我使用glfw3创建了一个OpenGL上下文,它报告说已经创建了v3.3上下文。但是我想检查我的代码是否兼容较低版本,并创建较低版本的上下文

我试过了

但版本仍然是3.3


那么,如何使用glfw创建较低版本的上下文呢?或者有没有其他方法来限制OpenGL版本?例如,使用驱动程序设置或环境变量。

仅供参考:OpenGL-2不支持OpenGL调试上下文此处GLFW的行为良好。请看一看解释。可能是@derhass的重复项。它不是重复项。我理解OpenGL在这个问题上的行为。我尝试了相同的代码,但结果并不让我满意,所以我问如何更改它,但没有问为什么它显示了错误的版本。关于你的第一个评论,我不需要与旧版本兼容,我需要将OpenGL功能限制在那个版本。例如,我在着色器中使用显式顶点属性布局,它在OGL2.0中不应该工作,所以我想检查它并检查处理它的代码。因此,据我所知,没有办法将OGL功能限制在较低版本。
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR,2);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR,0);
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR,2);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR,0);
glfwWindowHint(GLFW_OPENGL_DEBUG_CONTEXT,GL_TRUE);