Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Проблемы плавного перехода от OGL2.1 к OGL3.3 ?


Автор: XLAT 2.2.2013, 06:04
Выглядеть это будет в общих чертах так:
есть старый проект написанный во времена, когда правил ещё opengl1.5,

но вот тут захотелось добавить немного эффектов для отдельных объектов рисуемых на общей сцене.
Разумеется, с использованием шейдеров соответствующей версии.

Как это будет уживаться друг с другом? И вообще, насколько это возможно?

Автор: Arks 25.2.2013, 05:58
При использовании compatibility_profile должно уживаться вполне нормально. В нём можно использовать шейдеры и при этом есть все старые функции для рисования объектов по отдельным вершинам и задания projection matrix, modelview matrix, поворотов и прочих преобразований через glu* или glRotate и т.п. функции.

Выглядеть будет где-то так: загружаем шейдеры, биндим их на время отрисовки объектов, ради которых они созданы, потом снова отключаем и рисуем остальные объекты исключительно по старинке. В режиме совместимости в opengl по-умолчанию используются шейдеры, которые эмулируют фиксированный конвейер из "старого" opengl.

Вот http://www.swiftless.com/glsltuts.html есть примеры использования glsl в сочетании с объектами рисованными по старинке через glut.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)