Как установить основной профиль профиля для OpenGL в glfw?

Я ищу способ в C ++ сделать что-то вроде этого OpenGL GLSL 3.30 в Ubuntu 14.10 mesa 10.1.3

-2

Решение

Посмотрите на этот фрагмент кода (см. https://learnopengl.com/code_viewer_gh.php?code=src/1.getting_started/1.2.hello_window_clear/hello_window_clear.cpp) для остальной части кода:

int main()
{
// glfw: initialize and configure
// ------------------------------
glfwInit();
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);

#ifdef __APPLE__
glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE); // uncomment this statement to fix compilation on OS X
#endif

«В основной функции мы сначала инициализируем GLFW с помощью glfwInit, после чего мы можем настроить GLFW с помощью glfwWindowHint. Первый аргумент glfwWindowHint говорит нам, какую опцию мы хотим настроить, где мы можем выбрать опцию из большого числа возможных опций с префиксом GLFW_. Второй аргумент — это целое число, которое устанавливает значение нашей опции. Список всех возможных опций и соответствующих значений можно найти в документации по обработке окон GLFW. Если вы пытаетесь запустить приложение сейчас, и оно дает много неопределенные ошибки ссылок означают, что вы не связали библиотеку GLFW.

Поскольку этот сайт посвящен OpenGL версии 3.3, мы хотели бы сообщить GLFW, что 3.3 — это версия OpenGL, которую мы хотим использовать. Таким образом, GLFW может принять правильные меры при создании контекста OpenGL. Это гарантирует, что, когда у пользователя нет правильной версии OpenGL, GLFW не будет работать. Мы устанавливаем основную и вспомогательную версию как 3. Мы также сообщаем GLFW, что хотим явно использовать профиль ядра. Явное заявление GLFW о том, что мы хотим использовать профиль ядра, означает, что мы получим доступ к небольшому подмножеству функций OpenGL (без обратно совместимых функций, которые нам больше не нужны). Обратите внимание, что в Mac OS X вам нужно добавить glfwWindowHint (GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE); к вашему коду инициализации для его работы. » От: https://learnopengl.com/Getting-started/Hello-Window

Надеюсь это поможет.

1

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

Других решений пока нет …

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