Apple отказывается от OpenGL и OpenCL


Одним из наиболее важных объявлений на WWDC, конференции разработчиков Apple, было то, что для Apple OpenGL и Open CL являются устаревшими технологиями. Как вы думаете, что Apple ожидает от вас? Да, вы поняли — Металл — Apple изобрела здесь, более приближенную к оборудованию систему трехмерной графики.

OpenGL долгое время был основой трехмерной кроссплатформенной графики. До тех пор, пока даже его «изобретатель», The Khronos Group, заменил его на Vulkan, который является одним из новых графических API, приближенных к аппаратному, наряду с Microsoft DirectX3D 12 и Apple Metal. Все три предлагают API гораздо более низкого уровня, чем OpenGL, и работать с ними, возможно, сложнее для случайного 3D-программиста. Из трех только Vulkan является кроссплатформенным; DirectX3D 12 доступен только для Windows, а Metal — только для iOS / macOS.

Ситуация не срочна, поскольку OpenGL и OpenCL только устарели, но это первый шаг к их удалению.

«Приложения, созданные с использованием OpenGL и OpenCL, будут продолжать работать в macOS 10.14, но эти устаревшие технологии устарели в macOS 10.14. Игры и приложения с интенсивной графикой, использующие OpenGL, теперь должны использовать Metal. Аналогичным образом, приложения, использующие OpenCL для вычислительных задач, теперь должны использовать шейдеры Metal и Metal Performance «.

Если вы думаете, что iOS имеет иммунитет, стоит добавить, что OpenGL / ES также устарел:

«Приложения, созданные с использованием OpenGL ES, будут продолжать работать в iOS 12, но Open GL ES устарел в iOS 12. Игры и приложения с интенсивной графикой, которые ранее использовали OpenGL ES, теперь должны использовать Metal».

Вы можете возразить, что большинство игр создается с использованием игровых движков, таких как Unity, а поддержка Metal — это просто еще один бэкэнд, который нужно поддерживать. Однако это еще не все. Apple изолировала iOS и macOS от остального мира. Если бы он принял Vulkan и сохранил OpenGL, у него было бы кроссплатформенное решение, но принуждение Metal к любому, кто хочет запускать 3D на компьютере Apple, — типичное высокомерие Apple, которое выходит за рамки того, на что способна даже Microsoft.

Отказ от поддержки OpenCL затрагивает меньшее количество людей, но это кроссплатформенный язык программирования GPU, который используется для реализации параллельных вычислений. Удалить его из Apple — проблема, но он сливается с Vulkan после версии 2.2, поэтому реальная проблема в том, будет ли Apple поддерживать Vulkan?

Ситуация с OpenGL ES еще более запутанная. OpenGL ES — это облегченная версия OpenGL, которая используется в мобильных системах, таких как Android, iOS и т. Д. Это также основа для стандарта W3C WebGL. Если Apple прекращает поддержку OpenGL ES, означает ли это, что она не поддерживает WebGL? Несмотря на то, что Safari медленно внедряет его, вероятно, для защиты своей прибыли от App Store, теперь он поддерживает WebGL и включен по умолчанию, как и большинство современных браузеров. Предположительно, WebGL будет храниться в Safari при поддержке Metal.

Apple права в том, что будущее не за OpenGL, OpenCL или, возможно, за OpenGL ES, но правильным шагом, вероятно, будет перейти на Vulkan и продолжать поддерживать других до тех пор, пока это необходимо, а не сильным разработчикам, чтобы перейти на свой собственный Metal , который работает только на оборудовании Apple.


Добавить комментарий