Vulkan: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[непроверенная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
Gamziko (обсуждение | вклад)
Нет описания правки
Строка 35: Строка 35:
3 марта 2015 года [[Valve]] анонсировала [[Source 2]], [[игровой движок]] с поддержкой графического [[API]] Vulkan<ref>{{Cite web|accessdate = 2015-11-09|title = Valve announces Source 2 engine, free for developers|url = http://www.polygon.com/2015/3/3/8145273/valve-source-2-announcement-free-developers|publisher = Polygon}}</ref><ref>{{Cite web|accessdate = 2015-11-09|title = GDC 2015: Valve Announces Source 2 Engine - IGN|url = http://www.ign.com/articles/2015/03/04/gdc-2015-valve-announces-source-2-engine|publisher = IGN}}</ref>.
3 марта 2015 года [[Valve]] анонсировала [[Source 2]], [[игровой движок]] с поддержкой графического [[API]] Vulkan<ref>{{Cite web|accessdate = 2015-11-09|title = Valve announces Source 2 engine, free for developers|url = http://www.polygon.com/2015/3/3/8145273/valve-source-2-announcement-free-developers|publisher = Polygon}}</ref><ref>{{Cite web|accessdate = 2015-11-09|title = GDC 2015: Valve Announces Source 2 Engine - IGN|url = http://www.ign.com/articles/2015/03/04/gdc-2015-valve-announces-source-2-engine|publisher = IGN}}</ref>.


В начале 2015 года LunarG (финансируется [[Valve]]) разработан и представлен [[драйвер]] [[Linux]] для [[Intel]], который позволил Vulkan иметь совместимость с интегрированной графической системой HD 4000 серии, которая, несмотря на открытый [[драйвер]] Mesa, не полностью совместима с [[OpenGL|OpenGL 4.0]]<ref>{{Cite web|accessdate = 2015-11-09|title = Valve Developed An Intel Linux Vulkan GPU Driver - Phoronix|url = http://www.phoronix.com/scan.php?page=news_item&px=valve-intel-vulkan-driver|publisher = www.phoronix.com}}</ref><ref>{{Cite web|accessdate = 2015-11-09|title = Learning More About The Intel Vulkan Driver, Linux Vulkan Plans - Phoronix|url = http://www.phoronix.com/scan.php?page=news_item&px=LunarG-Vulkan-AMA|publisher = www.phoronix.com}}</ref>. Существует еще возможность<ref>{{Cite web|accessdate = 2015-11-09|title = Evan Odabashian on Twitter|url = https://twitter.com/eodabash/status/573178560283717632|publisher = Twitter}}</ref> поддержки [[Sandy Bridge]], так как он поддерживает [[Direct3D 11]].
В начале 2015 года LunarG (финансируется [[Valve]]) разработан и представлен [[драйвер]] [[Linux]] для [[Intel]], который позволил Vulkan иметь совместимость с интегрированной графической системой HD 4000 серии, которая, несмотря на открытый [[драйвер]] Mesa, не полностью совместима с [[OpenGL|OpenGL 4.0]]<ref>{{Cite web|accessdate = 2015-11-09|title = Valve Developed An Intel Linux Vulkan GPU Driver - Phoronix|url = http://www.phoronix.com/scan.php?page=news_item&px=valve-intel-vulkan-driver|publisher = www.phoronix.com}}</ref><ref>{{Cite web|accessdate = 2015-11-09|title = Learning More About The Intel Vulkan Driver, Linux Vulkan Plans - Phoronix|url = http://www.phoronix.com/scan.php?page=news_item&px=LunarG-Vulkan-AMA|publisher = www.phoronix.com}}</ref>. Существует еще возможность<ref>{{Cite web|accessdate = 2015-11-09|title = Evan Odabashian on Twitter|url = https://twitter.com/eodabash/status/573178560283717632|publisher = Twitter}}</ref> поддержки [[Ivy Bridge]], так как он поддерживает [[Direct3D 11]].


10 августа 2015 года [[Google (компания)|Google]] объявила о будущей версии [[Android]] с поддержкой Vulkan<ref>{{Cite web|accessdate = 2015-11-09|author = Reto Meier|date = 2015-08-10|title = Low-overhead rendering with Vulkan {{!}} Android Developers Blog|url = http://android-developers.blogspot.com/2015/08/low-overhead-rendering-with-vulkan.html|publisher = Low-overhead rendering with Vulkan {{!}} Android Developers Blog}}</ref>.
10 августа 2015 года [[Google (компания)|Google]] объявила о будущей версии [[Android]] с поддержкой Vulkan<ref>{{Cite web|accessdate = 2015-11-09|author = Reto Meier|date = 2015-08-10|title = Low-overhead rendering with Vulkan {{!}} Android Developers Blog|url = http://android-developers.blogspot.com/2015/08/low-overhead-rendering-with-vulkan.html|publisher = Low-overhead rendering with Vulkan {{!}} Android Developers Blog}}</ref>.

Версия от 14:51, 5 июля 2017

Вулкан (Vulkan)
Логотип программы Вулкан (Vulkan)
Скриншот программы Вулкан (Vulkan)
Тип API
Автор Khronos Group
Разработчик Khronos Group
Написана на Си[2]
Операционные системы Linux, Android Nougat, ReactOS, Windows
Первый выпуск 16 февраля 2016 г.
Аппаратная платформа кроссплатформенность
Последняя версия
Репозиторий github.com/KhronosGroup/…
Состояние Актуальное
Лицензия Пользовательское соглашение
Сайт vulkan.org (англ.)
Логотип Викисклада Медиафайлы на Викискладе

Vulkan — кроссплатформенный API для 2D- и 3D-графики, впервые представленный Khronos Group в рамках конференции GDC 2015[3][4].

Vulkan API изначально был известен как «новое поколение OpenGL» или просто «glNext», но после анонса компания отказалась от этих названий в пользу названия Vulkan[5]. Как и OpenGL, Vulkan позволяет с высокой производительностью отображать в реальном времени различные приложения с 3D-графикой, такие как игры или интерактивные книги на всех платформах, а также обеспечивает более высокую производительность и меньшую нагрузку на процессор, аналогично Direct3D 12 и Mantle. Vulkan основан на технологиях AMD в Mantle[6][7][8][9][10].

Обзор

Vulkan предназначен для обеспечения различных преимуществ по сравнению с другими API, включая его предшественника OpenGL. Vulkan предлагает более низкие накладные расходы, более непосредственный контроль над GPU, и с меньшей нагрузкой на CPU. Vulkan имеет предполагаемые преимущества:

  • OpenGL использует язык высокого уровня для написания шейдеров GLSL. Это заставляет каждого производителя OpenGL драйвера реализовать свой собственный компилятор для GLSL, который выполняется во время выполнения приложения, чтобы перевести шейдерные программы в исполняемый код для целевой платформы. Vulkan вместо этого обеспечивает промежуточный двоичный формат под названием SPIR-V (Standard Portable Intermediate Representation), аналогичный двоичному формату в который компилируются HLSL шейдеры на платформе DirectX. Это снимает бремя с поставщиков драйверов, позволяя производить компиляцию шейдеров на этапе разработки. Также позволяет разработчикам приложений писать шейдеры на других языках, кроме GLSL.
  • Кроссплатформенный API поддерживается на мобильных устройствах и высокопроизводительных видеокартах.
  • Улучшенная поддержка современных систем, использующих многопоточность.
  • Снижение нагрузки на ЦП в ситуациях, когда процессор является недостаточно производительным, что позволяет достичь более высокой пропускной способности для GPU-вычислений и визуализации.

История

Летом 2014 года Khronos Group начала проект по созданию следующего поколения графического API. В 2014 году на SIGGRAPH проект был публично анонсирован с призывом к участию.

Согласно ведомству США по патентам и товарным знакам, фирменный знак «Vulkan» был зарегистрирован 19 февраля 2015 года[11].

Vulkan был официально назван и анонсирован на Game Developers Conference 2015, хотя спекуляции и слухи вокруг нового API существовали заранее. Один из вариантов названий был «glNext»[12].

3 марта 2015 года Valve анонсировала Source 2, игровой движок с поддержкой графического API Vulkan[13][14].

В начале 2015 года LunarG (финансируется Valve) разработан и представлен драйвер Linux для Intel, который позволил Vulkan иметь совместимость с интегрированной графической системой HD 4000 серии, которая, несмотря на открытый драйвер Mesa, не полностью совместима с OpenGL 4.0[15][16]. Существует еще возможность[17] поддержки Ivy Bridge, так как он поддерживает Direct3D 11.

10 августа 2015 года Google объявила о будущей версии Android с поддержкой Vulkan[18].

18 декабря 2015 года Khronos Group объявила о том, что спецификация версии Vulkan 1.0 практически завершена и будет выпущена, когда будут доступны совместимые драйверы.

16 февраля 2016 года выпущена публичная спецификация версии Vulkan 1.0[19] и экспериментальные драйверы для видеокарт AMD и Nvidia.

Использование Vulkan

Игры

  • The Talos Principle – первая игра от хорватской компании Croteam, использующая данную технологию на практике.[20]
  • Dota 2 – 23 марта 2016 года была добавлена экспериментальная поддержка Vulkan и попала в релиз в мае 2016.[21]
  • Doom – 11 июля 2016 года Id Software выпустили патч для игры Doom (2016), в котором отрисовка графики и расчёт физических взаимодействий были переделаны с OpenGL на Vulkan.[22][23][24]
  • vkQuake – порт игры Quake на Vulkan выпущен в июле 2016.[25][26]
  • Need for Speed: No Limits, Vainglory и Heroes of Incredible Tales - в июне 2016 года Samsung объявила о поддержке портирования игр с OpenGL ES на Vulkan для смартфона Samsung Galaxy S7.[27]
  • Mad Max (игра, 2015) – 30 марта 2017 года в бета-тест вышла версия игры для Linux, использующая Vulkan. При этом количество кадров в секунду значительно увеличилось, местами более, чем в два раза.[28]
  • Olympus Rising – Поддержка добавлена 20 августа 2016.
  • Rust – Поддержка добавлена 13 января 2017.
  • Destinations – Поддержка добавлена 22 февраля 2017.
  • Wolfenstein II: The New Colossus – объявлена поддержка Vulkan.[29]
  • Побег из Таркова – объявлена поддержка Vulkan.[30]

Совместимость

Начальная спецификация утверждает, что Vulkan будет работать на оборудовании, которое в настоящее время поддерживает OpenGL ES 3.1 или OpenGL 4.x и выше[31]. В качестве поддержки Vulkan потребует новых графических драйверов, но это не обязательно означает, что все существующие устройства, которые поддерживают OpenGL ES 3.1 или OpenGL 4.X будут иметь доступные драйверы с поддержкой Vulkan.

См. также

Примечания

  1. v1.4.304 — 2024.
  2. Khronos Group Khronos Vulkan Registry
  3. Vulkan : Graphics and compute Belong Together (PDF). Khronos.org (март 2015). Дата обращения: 5 марта 2015.
  4. Vulkan - Graphics and compute belong together. Khronos.org. Дата обращения: 5 марта 2015.
  5. glNext revealed as Vulkan graphics API
  6. Mantle is a Vulkan: AMD’s dead graphics API rises from the ashes in OpenGL’s successor | PCWorld
  7. AMD Gaming: One of Mantle's Futures: Vulkan | AMD Blogs. Community.amd.com. Дата обращения: 5 марта 2015.
  8. Not dead yet: AMD’s Mantle powers new Vulkan API, VR efforts. ExtremeTech. Дата обращения: 5 марта 2015.
  9. AMD's Mantle Lives On In Vulkan - Lays The Foundation For The Next OpenGL. Wccftech.com (20 июня 2014). Дата обращения: 5 марта 2015.
  10. Kirsch, Nathan Is AMD Mantle Dead As We Have Known It? Vulcan API Uses Mantle Technology for OpenGL. Legit Reviews. Дата обращения: 5 марта 2015.
  11. Trademark Status & Document Retrieval. tsdr.uspto.gov. Дата обращения: 9 ноября 2015.
  12. glNext revealed as Vulkan graphics API. www.develop-online.net. Дата обращения: 9 ноября 2015.
  13. Valve announces Source 2 engine, free for developers. Polygon. Дата обращения: 9 ноября 2015.
  14. GDC 2015: Valve Announces Source 2 Engine - IGN. IGN. Дата обращения: 9 ноября 2015.
  15. Valve Developed An Intel Linux Vulkan GPU Driver - Phoronix. www.phoronix.com. Дата обращения: 9 ноября 2015.
  16. Learning More About The Intel Vulkan Driver, Linux Vulkan Plans - Phoronix. www.phoronix.com. Дата обращения: 9 ноября 2015.
  17. Evan Odabashian on Twitter. Twitter. Дата обращения: 9 ноября 2015.
  18. Reto Meier. Low-overhead rendering with Vulkan | Android Developers Blog. Low-overhead rendering with Vulkan | Android Developers Blog (10 августа 2015). Дата обращения: 9 ноября 2015.
  19. Khronos Vulkan Registry. www.khronos.org. Дата обращения: 16 февраля 2016.
  20. Williams, Daniel; Smith, Ryan (17 February 2016). "Quick Look: Vulkan Performance on The Talos Principle". Anandtech. Дата обращения: 19 февраля 2016.
  21. Dota 2 Update - May 23rd 2016. store.steampowered.com. Valve. Дата обращения: 24 мая 2016.
  22. "Vulkan Support Now Live - FAQ" (англ.). 2016-07-11. Дата обращения: 1 апреля 2017.
  23. "DOOM стала первой игрой-блокбастером с поддержкой Vulkan API". OSZone. 2016-07-11. Дата обращения: 11 июля 2016.
  24. DOOM – Vulkan Support Now Live. bethesda.net. Дата обращения: 11 июля 2016.
  25. Papadopoulos, John Here is your first look at the first Quake being recreated in Unreal Engine 4 (fan project). Dark Side of Gaming (21 июля 2016). Дата обращения: 26 августа 2016.
  26. Larabel, Michael Quake 1 Ported To Run On Vulkan. Phoronix. Phoronix Media (25 июля 2016). Дата обращения: 26 августа 2016.
  27. "See How Vulkan API and Galaxy S7 Create More Immersive Gaming Experiences" (англ.). 2016-06-28. Дата обращения: 1 апреля 2017.
  28. "Mad Max meets Vulkan in a new fully public beta for Linux, benchmarks and OpenGL vs Vulkan comparisons". GamingOnLinux (англ.). Дата обращения: 3 апреля 2017.
  29. Твит Tiago Sousa 12.06.2017
  30. Forum: Vulkan API Support?
  31. Vulkan Overview. The Khronos Group. Дата обращения: 5 июля 2016.