Выпуск PortableGL 0.98, реализации OpenGL 3 на языке Си

После более года разработки подготовлен выпуск проекта PortableGL 0.98, развивающего программную реализацию графического API OpenGL 3.x, написанную целиком на языке Си (C99). Теоретически PortableGL может быть использован в любых приложениях, принимающих текстуру или фреймбуфер в качестве входных данных. Код оформлен в виде одного заголовочного файла и распространяется под лицензией MIT.

Проектом определены такие цели, как переносимость, соответствие API
OpenGL, простота использования, простой код и высокая производительность. Из областей применения упоминаются обучение концепциям построения графических API, использование для работы с 3D-графикой на системах без GPU и интеграция поддержи OpenGL в специфичные операционные системы, для которых не перенесён пакет Mesa3D. Из готовых проектов, использующих PortableGL, отмечается порт Minecraft-подобной игры Craft.

В новой версии:

  • Реализована новая стандартная библиотека шейдеров.
  • Добавлена поддержка дополнительных форматов текстур и их автоматической конвертации в формат RGBA.

  • Добавлена поддержка использования для атрибутов вершин с типами, отличными от float.
  • Предложен новый улучшенный алгоритм формирования широких линий.
  • Расширен API. Добавлено много новых функций и возможностей OpenGL, среди которых и возможности OpenGL ES 2/3.





Release. Ссылка here.