Khronos опубликовала спецификации OpenGL 4.5 и представила OpenGL Next

OpenGL_Logo_678x452

Организация Khronos Group, занимающаяся разработкой отраслевых стандартов и спецификаций интерфейсов прикладных программ, на мероприятии SIGGRAPH 2014 представила спецификации новейшей версии стандарта OpenGL, получившей порядковый номер 4.5. Новейшая версия API для разработки 3D-приложений и игр содержит ряд новых функций, призванных существенно упростить жизнь разработчиков и в то же время вывести производительность и надежность приложений OpenGL на новый уровень.

opengl-next-generation-slide-640x360

На мероприятии SIGGRAPH 2014 группа призвала всех желающих поддержать свою новую инициативу по разработке OpenGL нового поколения. На фоне возрастающего интереса к низкоуровневым API, таким как AMD Mantle, Microsoft Direct3D 12 и Apple Metal, организация Khronos сообщила о разработке открытого, кроссплатформенного и бесплатного стандарта низкоуровневого взаимодействия со встраиваемыми 3D-оборудованием, который получил кодовое название Next.

OGL6

Вернемся к OpenGL 4.5. Одним из ключевых новшеств в новой версии популярного программного интерфейса стала встроенная поддержка функции Direct State Access (DSA), для работы которой раньше нужно было устанавливать специальное расширение.

Данная функция предоставляет разработчикам движков и прочего связующего ПО возможность получать быстрый доступ к состоянию и различным параметрам объектов (текстуры, шейдеры, кадровые буферы и прочее) без необходимости изменения их рабочего статуса на «активный» и осуществления привязки к контексту. Это существенно облегчает процесс разработки промежуточного ПО, так как больше не нужно беспокоится о графическом состоянии объекта, которое установила программа. Поддержка DSA была одним из главных преимуществ Direct3D над OpenGL на протяжении долгих лет и вот теперь это отличие окончательно устранено.

Кроме того, OpenGL 4.5 дает гораздо больше контроля над отправкой команд к GPU, что в свою очередь приводит к улучшению производительности кода в многопоточном исполнении и делает  приложения более надежными: за счет исполнения в специальной изолированной среде сбой в программах не станет причиной сброса GPU. Последнее в большей степени касается приложений, использующих WebGL, где изоляция 3D-программ имеет особенно решающее значение для обеспечения общей безопасности и стабильности системы.

Одновременно с публикацией спецификаций новой версии OpenGL организация Khronos сообщила о выходе промежуточного языка программирования SPIR 2.0, связанного с вычислениями GPGPU.

В числе других улучшений в OpenGL 4.5 стоит отметить полную совместимость с API и шейдерами стандарта OpenGL ES 3.1, а также механизмы эмуляции DX11, сильно упрощающие задачу портирования на OpenGL программ, использующих Direct3D.

opengl-next-generation-motivations-slide

Что касается планов на будущее, объявленный Khronos новая инициатива OpenGL Next, о котором упоминалось в начале заметки, должен полностью изменить парадигму восприятия популярного кроссплатформенного API. Следующая версия OpenGL под кодовым названием Next будет полностью переработана. Проект OpenGL Next пока находится на очень ранней стадии развития, поэтому о сроках выхода финальной версии API говорить пока рано. Впрочем, к следующей конференции SIGGRAPH организации уже будет чем похвастаться перед индустрией.

Напоследок стоит отметить, что NVIDIA уже заявила о поддержке стандарта OpenGL 4.5 в своих драйверах версии 340.xx для Windows и Linux для видеокарт на микроархитектуре Fermi и новее. Компании AMD и Intel пока только сообщили о скором выходе соответствующих обновлений драйверов, которые принесут поддержку нового API.

Источник: ArsTechnica, AnandTech и Khronos