带 GLFW 的 OpenGL 中的主要和次要是什么意思?

Spa*_*tor 2 c opengl glew glfw

我在一些使用集成显卡的戴尔 PC 上创建了一个OpenGL窗口GLFW。我认为这major意味着最大值和minor最小值。但是,具有 (3,3) 的受限版本范围有效,但包含它的范围(例如(4,2))失败。

例子:

//fails
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);

//fails
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 2);

//success
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);

//success
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 2);
Run Code Online (Sandbox Code Playgroud)

小智 6

“主要”和“次要”是单个版本号的两个组成部分,用点分隔。

版本 4.3 是主要版本 4,次要版本 3。

版本 3.1 是主要版本 3,次要版本 1。

等等。

示例代码的结果表明您的计算机可能不支持 OpenGL 4.x 上下文。您需要坚持使用 OpenGL 3.x 或更早版本。