OpenGL обратная совместимость
Я купил видеокарту, которая поддерживает OpenGL 4.2. Но я хочу разработать приложение, которое должно поддерживать OpenGL 2.0
Будет ли моя карта поддерживать приложения OpenGL 2.0 (обратная совместимость)? Тогда как обеспечить обратную совместимость
Я планировал использовать библиотеки GLUT/GLFW C++.
2 ответа
Решение
https://developer.nvidia.com/opengl-driver - пожалуйста, прочитайте о совместимости и что из драйверов не будет удалена "старая" функциональность.
В общем, вы можете создать свое приложение в двух режимах:
- Ядро: это современный OpenGL, без фиксированной функциональности конвейера. В freeGlut вы можете использовать
glutInitContextFlags (GLUT_CORE_PROFILE);
а такжеglutInitContextVersion (4, 2);
использовать ядро opengl 4.2 - Совместимость: поддерживаются все функциональные возможности от OpenGL 1.1 до 4.2 (в вашем случае), и все эти функции могут использоваться в вашем коде. По умолчанию приложения используют этот профиль, или вы можете создать его через
glutInitContextFlags (GLUT_COMPATIBILITY_PROFILE );
Ваша графическая карта будет иметь обратную совместимость с приложением OpenGl 2.0. Вам не нужно делать ничего особенного