Apple захищає Killing OpenGL, OpenCL, як розробники загрожують повстання
Apple оголосила в WWDC, що він закінчить підтримку OpenGL і OpenCL. Незважаючи на те, що ніхто з них особливо не дивно, враховуючи попередню готовність Apple ігнорувати прогресування в версіях OpenGL, це оголошення все ще почало дебатувати розробників ігор, які вже відчувають себе менш любимими. Щоб відмовитися від деяких негараздів, компанія Apple нещодавно випустила відео про розробників Metal для розробників OpenGL, щоб пояснити деякі його думки та те, як ситуація буде розгортатися.
Метал, для тих, хто не знає, - це Apple API, створений для викликів дзвінків з низькою затримкою на пристрої з ОС iOS, а пізніше - до MacOS. Він сумісний з кількома GPU від Intel, AMD та Nvidia, а також спеціальними графічними процесорами, які Apple збирає для власних мобільних продуктів. Не цілком зрозуміло, що підтримка металу для останніх графічних процесорів Nvidia еквівалентна підтримці AMD та Intel, з огляду на те, що Apple останніми роками стикається з обладнанням двох останніх компаній, але це, ймовірно, вплине на користувачів Hackintosh у будь-якому випадку .
Як і Mantle, DirectX 12 і Vulkan Metal (технологія Metal 2 now) - це API, призначений для мінімізації використання процесора та обмеження часу, який графічний процесор витрачає на процесор, щоб завершити обробку. Ці API низького рівня абсолютно відрізняються від попередніх версій OpenGL і DirectX. Ця відмінність, на думку Apple, є ключовим компонентом того, чому зараз він застаріє стандарти. Трубопроводи графічного процесора, підтримка багатопотокових та асинхронних обчислювальних можливостей багато що змінилися протягом останніх десяти років, і Apple хоче зробити чисту перерву з минулого.
Цей тип аргументів є загальним з Apple, і був використаний, щоб виправдати все, відмова компанії від дисковода та компакт-диска, а останнім часом - до гнізда для навушників. (Це питання, чи ви знаходите їх віддалено переконливими? Але це викликає особливі проблеми в іграх, де старіші назви, які покладаються на OpenGL, просто не працюватимуть у майбутньому, якщо компанія Apple видаляє існуючу підтримку OGL.
Сьогодні Apple просто знецінює стандарт. OpenGL не буде використовуватися або віддавати перевагу, але це також не йде ніде. Але в майбутньому - ймовірно, в найближчі кілька років - це неминуче зміниться. Знову ж таки, це те, на що ми можемо взагалі розраховувати, тому що Apple не звично залишати підтримку застарілих можливостей у своїх операційних системах. Коли він розповів розробникам, що вони починають встановлювати пріоритети 64-розрядних додатків в магазині iOS App Store, це було перевагою для усунення можливості запустити 32-розрядні програми взагалі. Оскільки користувачі MacOS вже готуються до того ж переходу.
Але в цьому випадку наслідки більші. Apple представила Metal тільки в 2014 році, що означає, що будь-яка гра для Mac побудована до цього моменту (і реалістично, багато з них побудовано після) буде працювати тільки в OpenGL. Apple, яка протягом багатьох років не підтримувала ігровий процес до будь-якого ступеня, також гарантує, що Mac буде ще складнішою платформою для заохочення розробників кодувати, оскільки їм доведеться використовувати певний API, унікальний для Apple зробити це. Тепер, замість того, щоб портувати в OGL як засіб забезпечення роботи ігор як в Linux, так і в MacOS, розробникам доведеться портувати до macOS окремо - якщо вони це взагалі турбуються.