Меню
Главная
Случайная статья
Настройки
|
Mesa — свободная реализация графических API OpenGL, Vulkan и других спецификаций, а также набор видеодрайверов пространства пользователя для GPU AMD/ATI Radeon, Intel, Nvidia, Qualcomm.
Mesa ориентирована на обеспечение высокой производительности при работе с 3D-графикой, в том числе за счёт использования аппаратного ускорения работы с графикой, поддерживаемого графическими процессорами. Mesa, называемая также «Mesa3D», лежит в основе графического стека свободных UNIX-подобных операционных систем, в основном дистрибутивов Linux и дистрибутивов *BSD, так что на этих операционных системах без использования Mesa невозможно добиться работы графического интерфейса, окружения рабочего стола, современных приложений, использующих графический интерфейс, 3D-графики, в том числе игр, производительность в которых во многом зависит от развития Mesa. Поэтому для всех пользователей дистрибутивов GNU/Linux и *BSD, использующих графический интерфейс, Mesa является чрезвычайно важным компонентом их графического стека, и её регулярное обновление до самых новых версий имеет большое значение для всех пользователей свободных UNIX-подобных операционных систем.
Наиболее востребованными компонентами Mesa являются графические драйверы пространства пользователя для видеопроцессоров Intel и Radeon, которые в основном разрабатываются и финансируются компаниями Intel, AMD, Red Hat, но также и другими крупными компаниями, например, Valve из-за их заинтересованности в развитии Steam OS. Но так как в разработке программ с открытым исходным кодом может принять участие любой желающий, в разработке Mesa принимают участие все, кто заинтересован в дальнейшем развитии этого проекта, и при этом имеет возможность и желание участвовать в разработке. Например, компания Nvidia, в отличие от Intel и AMD, не способствует развитию Mesa, а вместо этого разрабатывает свой собственный проприетарный видеодрайвер с закрытым исходным кодом, включающий в себя свой собственный отдельно подключаемый видеодрайвер Linux и свои собственные реализации API OpenGL и Vulkan. Поэтому Nouveau — свободный графический драйвер для графических процессоров Nvidia, в отличие от драйверов для AMD/ATI Radeon и Intel GPU в основном разрабатывается усилиями сообщества и компании Red Hat, а не самого производителя графических процессоров Nvidia. Mesa реализует кросс-языковой, кросс-платформенный (в основном, для дистрибутивов BSD и GNU/Linux), стандартный API-интерфейс, нейтральный к любым поставщикам GPU, для взаимодействия с различными аппаратными драйверами для конкретных производителей GPU.
Помимо 3D-приложений, таких как, например, игры, современные менеджеры окон (X.org/Glamor или Wayland/Weston) тоже используют Vulkan/OpenGL/EGL, реализацию которых предоставляет Mesa. Поэтому это — ещё одна причина, по которой вся графика в UNIX-подобных ОС с открытым исходным кодом обычно проходит через Mesa.
Ранее разработка Mesa происходила на freedesktop.org, но после состоялся переезд на GitLab.org (Архивная копия от 14 февраля 2021 на Wayback Machine), где сейчас и происходит разработка. Разработка Mesa была впервые начата в августе 1993 года Брайаном Полом, который все ещё активно участвует в проекте. Впоследствии Mesa была широко принята и теперь содержит многочисленные вклады различных независимых людей и представителей корпораций со всего мира, в том числе от производителей графических процессоров, входящих в Khronos Group, которые администрируют спецификации OpenGL и Vulkan. Для GNU/Linux быстрое развитие Mesa также, кроме того, частично было вызвано добровольным сбором денег на разработку.
Содержание
История
Проект был начат в августе 1993 года Брайаном Полом (англ. Brian Paul) как простая библиотека трёхмерной графики, реализующая OpenGL API.
Версия |
Выпущена |
Комментарий
|
1.0 |
февраль 1995 |
первая версия библиотеки, опубликованная в интернете
|
2.0 |
октябрь 1996 |
реализация спецификации OpenGL 1.1
|
2.2 |
март 1997 |
поддержка новых видеокарт 3dfx Voodoo через библиотеку Glide
|
3.0 |
сентябрь 1998 |
первая общественно-доступная реализация OpenGL 1.2 API
|
4.0 |
октябрь 2001 |
реализация OpenGL 1.3
|
5.0 |
ноябрь 2002 |
реализация OpenGL 1.4
|
6.0 |
январь 2003 |
реализация OpenGL 1.5, а также расширений GL_ARB_vertex_program и GL_ARB_fragment_program
|
7.0 |
июнь 2007 |
реализация OpenGL 2.1 и OpenGL Shading Language.
|
7.0.3 — 7.4.4 |
апрель 2008 — июнь 2009 |
исправление ошибок, внутренние изменения
|
7.5 |
июль 2009 |
добавлена архитектура Gallium3D
|
7.5.1 — 7.10.2 |
сентябрь 2009 — апрель 2011 |
исправление ошибок, внутренние изменения
|
8.0 |
февраль 2012 |
реализация OpenGL 3.0, исправление ошибок и чистка кода
|
9.0 |
октябрь 2012 |
реализация OpenGL 3.1
|
10.0 |
декабрь 2013 |
реализация OpenGL 3.3
|
11.0 |
сентябрь 2015 |
реализация OpenGL 4.1
|
12.0 |
июль 2016 |
реализация OpenGL 4.3
|
13.0 |
ноябрь 2016 |
реализация OpenGL 4.5
|
17.0 |
февраль 2017 |
Новая схема нумерации версий, OpenGL 4.5(+дополнительные ARBs), OpenGL ES 3.2
|
17.1 |
10 мая 2017 |
Реализация новых расширений OpenGL, Vulkan, дискового кэша RadeonSL
|
17.2 |
5 сентября 2017 |
Реализация новых расширений Vulkan и OpenGL, начальная реализация OpenGL 4.6, значительное улучшение производительности
|
17.3 |
8 декабря 2017 |
Реализация новых расширений Vulkan и OpenGL, реализация дискового кэша RADV, значительное улучшение производительности
|
Лицензия
Лицензия Mesa считалась свободной, но в 2008 году возникли вопросы[10][11][12][13][14][15] насчёт небольших частей кода, распространявшихся под лицензиями SGI Free Software License B версии 1.1 и GLX Public License — они оказались несвободными.[16] 19 февраля 2008 года SGI объявила о выходе гораздо более простой и одобренной FSF и Khronos Group SGI Free Software License B версии 2.0[17], и лицензировании под ней примеры реализации OpenGL, GLX API и других расширений GLX.[18]
Реализации API
API |
|
|
Vulkan |
OpenCL |
OpenGL |
OpenGL ES |
OpenVG |
EGL |
GLX |
Direct3D
|
Версия |
Дата |
Последнее обновление |
1.0 2016-02-16 |
2.1 2015-11-11 |
4.5 2014-08-11 |
3.2 2015-08-10 |
1.1 2008-12-03 |
1.5 2014-03-19 |
1.4 2005-12-16 |
12.0 2015-07-29
|
Будущая версия: 17.0
|
2017-03-20
|
17.0.2
|
1.0
|
|
4.5 (+ доп. ARB)
|
3.2
|
|
1.5
|
1.4
|
9.0c[19][20]
|
Текущая версия: 13.0
|
2016-11-01.iso.2025 |
13.0.6 |
N/A |
4.5 |
N/A[21]
|
Старая поддерживаемая версия: 12.0
|
2016-07-08.iso.2025[22] |
12.0.6 |
4.3[22]
|
3.1
|
Старая версия, не поддерживается: 11.2
|
2016-04-04.iso.2025[23] |
11.2.2 |
N/A |
4.1[24]
|
Старая версия, не поддерживается: 11.1
|
2015-12-15.iso.2025[25] |
11.1.4 |
3.0
|
Старая версия, не поддерживается: 11.0
|
2015-09-12.iso.2025[26] |
11.0.9
|
Старая версия, не поддерживается: 10.6
|
2015-06-15.iso.2025[27] |
10.6.9 |
3.3[28] |
1.4
|
Старая версия, не поддерживается: 10.5
|
2015-03-06.iso.2025[29] |
10.5.9 |
1.1
|
Старая версия, не поддерживается: 10.4
|
2014-12-14.iso.2025[30] |
10.4.7
|
Старая версия, не поддерживается: 10.3
|
2014-09-19.iso.2025[31] |
10.3.7 |
N/A
|
Старая версия, не поддерживается: 10.2
|
2014-06-06.iso.2025[32] |
10.2.9
|
Старая версия, не поддерживается: 10.1
|
2014-03-04.iso.2025[33] |
10.1.6
|
Старая версия, не поддерживается: 10.0
|
2013-11-30.iso.2025[34] |
10.0.5
|
Старая версия, не поддерживается: 9.0
|
2012-10-08.iso.2025 |
9.0.3, 9.1.7, 9.2.5 |
3.1[35] |
2.0
|
Старая версия, не поддерживается: 8.0
|
2012-02-08.iso.2025 |
8.0.5 |
3.0
|
Старая версия, не поддерживается: 7.0
|
2007-06-22.iso.2025 |
7.0.4, …, 7.11.2 |
2.1 |
N/A |
N/A |
N/A
|
Старая версия, не поддерживается: 6.0
|
2004-01-06.iso.2025 |
6.0.1 |
1.5 |
1.3
|
Старая версия, не поддерживается: 5.0
|
2002-11-13.iso.2025 |
5.0.2 |
1.4
|
Старая версия, не поддерживается: 4.0
|
2001-10-22.iso.2025 |
4.0.4 |
1.3
|
Старая версия, не поддерживается: 3.0
|
1998-09.iso.2025 |
3.1, 3.2.1, 3.4.2.1 |
1.2
|
Старая версия, не поддерживается: 2.0
|
1996-10.iso.2025 |
2.6 |
1.1
|
Старая версия, не поддерживается: 1.0
|
1995-02.iso.2025 |
1.2.8 |
1.0
|
Легенда: Старая версия, не поддерживается Старая поддерживаемая версия Текущая версия Тестовая версия Будущая версия
|
Примечания
- 1 2 https://web.archive.org/web/20161102062539/http://www.mesa3d.org/intro.html
- [ANNOUNCE mesa 25.2.3] — 2025.
- 1 2 3 4 http://www.mesa3d.org/developers.html
- https://www.supergoodcode.com/meatballs/
- https://www.openhub.net/p/mesa/analyses/latest/languages_summary
- 1 2 https://www.openhub.net/p/mesa
- Platforms and Drivers
- https://www.mesa3d.org/license.html
- The mesa Open Source Project on Open Hub: Licenses Page — 2006.
- gNewSense Bugs : Free as in freedom | Bugs / xserver-xorg: wordy SGI license may not be free Архивировано 27 сентября 2008 года.
- #211765 — xorg-server: material under GLX Public License is not DFSG-free — Debian Bug report logs (неопр.). Дата обращения: 19 сентября 2008. Архивировано 13 мая 2015 года.
- Export clauses in XFree86 licensing (неопр.). Дата обращения: 19 сентября 2008. Архивировано 1 октября 2012 года.
- Non-free (?) GLX code under GLX Public License and SGI Free Software Licence B (неопр.). Дата обращения: 19 сентября 2008. Архивировано 29 декабря 2014 года.
- Licensing:Main — FedoraProject (неопр.). Дата обращения: 19 сентября 2008. Архивировано 22 сентября 2012 года.
- Various Licenses and Comments about Them — GNU Project — Free Software Foundation (FSF) (неопр.). Дата обращения: 12 сентября 2015. Архивировано 24 сентября 2015 года.
- Various Licenses and Comments about Them (англ.). Free Software Foundation (17 сентября 2008). Дата обращения: 20 сентября 2008. Архивировано из оригинала 22 августа 2011 года.
- Thank you SGI, for freeing the GNU/Linux 3D desktop! (англ.). Free Software Foundation (19 сентября 2008). Дата обращения: 20 сентября 2008. Архивировано из оригинала 24 августа 2011 года.
- ??? (англ.). SGI (19 сентября 2008). Дата обращения: 20 сентября 2008. Архивировано из оригинала 24 августа 2011 года.
- latest patches to "nine" state tracker (неопр.) (4 февраля 2016). Дата обращения: 21 июля 2016. Архивировано 3 августа 2020 года.
- Larabel, Michael. Mesa 10.4 Officially Released With Direct3D 9 State Tracker (неопр.). Phoronix (14 декабря 2014). Дата обращения: 11 июля 2015. Архивировано 13 июля 2015 года.
- Larabel, Michael. OpenVG Support Stripped From Gallium3D (неопр.). Phoronix (4 марта 2015). Дата обращения: 11 июля 2015. Архивировано 13 июля 2015 года.
- 1 2 Mesa 12.0 Released With OpenGL 4.3 Support, Intel Vulkan & Many Other Features (неопр.) (8 июля 2016). Дата обращения: 8 июля 2016. Архивировано 16 августа 2016 года.
- [Mesa-announce] Mesa 11.2.0 (неопр.). Дата обращения: 4 апреля 2016. Архивировано 14 апреля 2016 года.
- Mesa Release Notes (неопр.). Дата обращения: 21 июля 2016. Архивировано 4 июня 2016 года.
- [Mesa-announce] Mesa 11.1.0 (неопр.). Дата обращения: 15 декабря 2015. Архивировано 7 марта 2016 года.
- [Mesa-announce] Mesa 11.0.0 (неопр.). Дата обращения: 26 сентября 2015. Архивировано 27 сентября 2015 года.
- [Mesa-announce] Mesa 10.6.0 (неопр.). Дата обращения: 15 июня 2015. Архивировано 9 марта 2016 года.
- Larabel, Michael. Features To Be Found In Mesa 10.0 (неопр.). Phoronix (26 октября 2013). Дата обращения: 21 июля 2016. Архивировано 30 июня 2016 года.
- [Mesa-announce] Mesa 10.5.0 (неопр.). Дата обращения: 7 марта 2015. Архивировано 7 марта 2016 года.
- [Mesa-announce] Mesa 10.4.0 released (неопр.). Дата обращения: 7 марта 2015. Архивировано 2 апреля 2015 года.
- [Mesa-announce] Mesa 10.3 released (неопр.). Дата обращения: 7 марта 2015. Архивировано 8 марта 2016 года.
- [Mesa-announce] Mesa 10.2 released (неопр.). Дата обращения: 7 марта 2015. Архивировано 8 марта 2016 года.
- [Mesa-announce] Mesa 10.1 released (неопр.). Дата обращения: 7 марта 2015. Архивировано 7 марта 2016 года.
- [Mesa-announce] Mesa 10.0 released (неопр.). Дата обращения: 7 марта 2015. Архивировано 10 марта 2016 года.
- Mesa 9.0 Release Notes (неопр.). Mesa (8 октября 2012). Дата обращения: 11 июля 2015. Архивировано 5 июня 2015 года.
См. также
Ссылки
|
|