Является ли GLUT мертвым?

Прочитав обсуждение на форумах Ubuntu относительно GLUT vs. FreeGLUT.

Является ли GLUT мертвым для графического программирования? Является ли SDL всей яростью сейчас для программирования OpenGL?

Ответ 1

По моему мнению, GLUT по-прежнему отлично изучает программирование OpenGL. Он, насколько мне известно, больше не поддерживается. Посмотрите на: http://www.opengl.org/resources/libraries/glut/ для официального слова

Выдержка из приведенной выше ссылки - "Библиотека GLUT имеет как C, С++ (такие же, как C), FORTRAN и привязки программирования Ada. Распространение исходного кода GLUT переносимо почти для всех реализаций и платформ OpenGL. Текущая версия - 3.7. Дополнительные выпуски библиотеки не являются ожидается. GLUT не является открытым исходным кодом. Марк Килгард сохраняет авторские права.

Также смотрите: http://www.opengl.org/resources/libraries/windowtoolkits/ для альтернатив.

Вы также можете проверить GLUX: http://code.google.com/p/glux/

Насколько SDL является яростью, он отлично подходит для кросс-платформенных вещей, и многие люди его используют. Я лично использую Qt для работы OpenGL. Существуют и другие альтернативы оконной системы. Также можно запрограммировать изначально для окон или X.


Изменить 28 февраля 2017:


Я должен уточнить, что ученику, желающему вникать в практичность OpenGL, было бы лучше, начиная с SDL или Qt. Как справедливо отмечает @TM в своем комментарии, использование GLUT далека от реалий программирования реального рендеринга в OpenGL. Мое мнение о том, что GLUT хорош для обучения, объясняется тем, что его легче изучить, когда отделяет внимание от изучения OpenGL от интереса к изучению особенностей системы Windowing. Естественно, это может не соответствовать вашим потребностям.

Ответ 2

GLUT довольно упрощен для серьезного развития игры. SDL используется многочисленными компаниями портирования коммерческой игры. GLUT, похоже, хорош для изучения OpenGL и для простых демонстраций. Что-то вроде SDL неплохо для реальных игр.

SDL с его абстракциями для других вещей, таких как аудио и SDL, различные библиотеки аддонов (SDL_image, SDL_mixer,...) очень помогают при написании полноценной игры. Контроль над основным циклом также очень важен.

Если вы работаете с OpenGL-приложением, для которого также нужен собственный графический интерфейс (например, 3D-модельер), вас может больше заинтересовать использование wxWidgets или, как предложил batbrat, Qt.

Ответ 3

GLUT - очень полезное учебное пособие, но оно не является полнофункциональным или полезным для большинства приложений реального мира. Я также столкнулся с незначительными проблемами с несколькими различными реалиями GLUT и поддержкой в ​​некоторых средах, поэтому я научился избегать этого, кроме быстрых демонстраций.

Мой опыт OpenGL, как правило, был во встроенных системах, где я полностью контролирую вывод, и там я использую X Instrinsics, чтобы получить основное окно OpenGL. Это немного больно, но это небольшое количество кода, чтобы добраться до OpenGL, где основная часть работы выполнена.