Как мне создать контекст OpenGL 1.2 в GLFW 3

Я хочу создать контекст OpenGL 1.2, но я получаю эту ошибку: «Не удалось открыть окно GLFW».
Когда я создаю 3.3 или 4.3 контекст, нет проблем. Как я могу создать 1,2 контекста?

glfwWindowHint(GLFW_SAMPLES, 4);
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 1);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 2);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);

const GLFWvidmode * mode = glfwGetVideoMode(glfwGetPrimaryMonitor());
WindowWidth = mode->width;
WindowHeight = mode->height;
midWindowWidth = WindowWidth / 2;
midWindowHeight = WindowHeight / 2;window = glfwCreateWindow(WindowWidth, WindowHeight, "Quadcopter Project", glfwGetPrimaryMonitor(), NULL);
if( window == NULL )
{
fprintf( stderr, "Failed to open GLFW window. \n" );
glfwTerminate();
return -1;
}

1

Решение

В OpenGL нет профилей < 3.2. Вы не можете создать основной профиль 1.2, потому что такого нет.

Вы также не можете напрямую заставить драйвер создать 1.2-контекст. Возможность запрашивать конкретную контекстную версию была введена в 3.0. Так что в основном все до 3.0 — это просто какой-то унаследованный контекст. Вы можете запросить 1.2, но он может дать вам гораздо более высокий контекст (профиль совместимости), в зависимости от платформы и драйверов, на которых вы это пробуете.

3

Другие решения


По вопросам рекламы [email protected]