Новости про 3D, Linux и OpenGL

Mesa 3D версий 7.10 и 7.9.1 с поддержкой Sandy Bridge

Обновление открытых графических библиотек поддержки OpenGL.

Новая версия 7.10 реализации OpenGL Mesa3D, основной графической библиотеки для драйверов видеокарт с открытым исходным кодом в Linux и FreeBSD, содержит ряд нововведений и исправлений:

  • поддержка расширений: GL_ARB_explicit_attrib_location, GL_ARB_texture_rg, GL_EXT_separate_shader_objects, GL_NV_primitive_restart (доступность расширений зависит от драйвера и оборудования);
  • поддержка встроенной графики процессоров Intel Sandy Bridge в драйвере i965 DRI;
  • переработанный механизм исполнения пиксельных шейдеров для драйвера i965;
  • множество исправлений и улучшений в подсистемах Gallium и GLSL, драйверах R600c/g, i915, i965, NV50/nouveau;

Релиз 7.10 пока считается «сырым» и предназначен для разработчиков, для конечных пользователей выпущен 7.9.1, содержащий только исправления, без новой функциональности. Загрузить исходный код библиотек для самостоятельной сборки можно с FTP-сервера Freedesktop.org:

Разрабатывается эффективный программный рендер для Linux

Программный рендеринг тоже бывает востребован.

В рамках проекта llvmpipe в составе графической архитектуры Gallium 3D разрабатывается программный растризатор с использованием многопоточности. Программный растризатор OpenGL всегда существовал в составе библиотеки Mesa3D, но его эффективность оставляла желать много лучшего, в то время как коммерческие решения вроде SwiftShader уже достаточно давно обеспечивали достаточно высокую эффективность эмуляции Direct3D, и даже Microsoft начала проект полноценного «запасного» программного рендеринга в архитектуре DirectX под названием WARP.

«Эмулятор» в составе llvmpipe уже в значительной части завершён для пиксельных шейдеров и начаты работы над реализацией вершинной части. По сообщениям разработчика, игра на основе движка Quake 3 OpenArena в системе с процессором Intel Xeon E5405 (четыре ядра, 2 ГГц) с программным рендерингом работает со скоростью 25 FPS, против 3,5 FPS с эмуляцией Mesa3D.

Программный рендеринг полезен в системах, где нет аппаратного ускорителя или доступ к нему сильно затруднён, а необходимо отображать не слишком сложную трёхмерную графику, например в виртуальных машинах и в серверах.

Бесплатный 3D движок Cafu Engine

Еще один бесплатный 3D движок для игр под GPL.

Ранее известный как Ca3DE, движок Cafu Engine переведён в разряд FreeWare и открыт исходный код. Cafu Engine, как и недавно также ставший бесплатным 3Impact, ориентирован на «хардкорных» C++ разработчиков, но содержит большое количество готовых инструментов. Графическая часть поддерживает работу с материалами, попиксельным освещением и шейдерными эффектами, для рендеринга используется OpenGL 2.0 с поддержкой фирменного языка шейдеров NVIDIA Cg. Движок предлагает встроенные функции создания многопользовательского режима (клиент-серверной архитектуры), импорт моделей из популярных форматов, создание растительности, кривые поверхности Безье, эффекты на системе частиц. Для игровой физики используется Bullet Physics.

Движок доступен для платформ Windows (~80 Мб) и Linux (~70 Мб) под лицензией GPLv3. Поддерживаются как 32-, так и 64-разрядные версии, версия для MacOS планируется в будущем. Средний рейтинг движка на сайте DevMaster.net составляет 4 балла — как у популярного OGRE.

Cafu Engine Demo Video
Возможно, кто-то найдёт в нём то, чего не нашел в Unreal Engine 3.