Технологія, яка назавжди змінить наші уявлення про інтернет-додатках, готується до виходу в світ. Завдяки цій технології інтернет-додатки зможуть спілкуватися з графічними процесорами (gpu) пристроїв безпосередньо, без посередників. Тобто, використовувати можливості gpu повністю. Технологія так і називається-webgpu. Браузери підтримують webgpu перетворяться в повноцінні ігрові платформи, але це не головна і не єдина перевага нової технології. Відео-кодеки в таких браузерах теж запрацюють з повною швидкістю. У 94 бета-версії google chrome для mac, що вийшла тиждень тому, в webgpu з’явилася підтримка metal. Спрощено metal можна назвати “мовою 3-мірної графіки”.

Safari скоро перетвориться на повноцінну ігрову платформу

Apple послухала google і повернула старий safari в ios 15

Строго кажучи, webgpu, metal і його аналоги для інших платформ, directx і vulkan не технології, а набори програмних інтерфейсів (api). З їх допомогою розробники можуть управляти графічним процесором з розроблюваного ними програмного забезпечення. Графічна міць більшості сучасних смартфонів, планшетів і комп’ютерів вражає уяву, але повністю використовувати її вдається далеко не завжди. Я спробую, не влазячи в технічні нетрі, пояснити що відбувається, і коли цими чудесами зможуть насолодитися всі. Якщо ви не знаєте що таке metal і safari technology preview, в кінці статті я про них розповім. Аналоги metal для інших платформ-directx і vulkan – по суті те ж саме.

Підтримка webgpu в safari

Apple має намір розширити можливості браузерів на своїх пристроях

94 бета-версія google chrome стала другим браузером “не для всіх” в екосистемі apple підтримує диво-api webgpu. Поки у варіанті для macos. Першим браузером “не для всіх” на mac’ах підтримує ці api став 26 реліз safari technology preview в березні 2017 року. Api розробляються з 2016, дебютували вони в січні 2017 року в веб – браузері з відкритим вихідним кодом chromium. Від google. Називалися вони ntx, і в них не підтримувався metal. Для нормального користувача ця назва не найвдаліше. Про те що в придбаній ним програмі підтримується потужне і передове щось потрібно знати всім.

Такі програми краще продаються, в їх розвиток вкладають більше грошей і жити через це стає ще цікавіше. У лютому 2017 року apple запропонувала w3c, неприбутковій організації контролюючої розвиток веб-технологій, свій варіант ntx, заснований на metal, назвавши його webgpu. А через місяць вийшов safari technology preview 26 (це браузер, тому “він”) з підтримкою webgpu. З березня 2017 ці api офіційно називаються webgpu. Просто, зрозуміло і не дуже заумно. Ці api цікаві розробникам, швидко розвивалися і дорослішали, і ось, через п’ять років після їх народження, готові прийти в життя звичайних людей.

Браузери з підтримкою webgpu

Підтримка webgpu з’явиться і в safari, і в google chrome

В перших релізних версіях операційних систем apple (у вересні і, мабуть, в жовтні цього року) в safari 15 webgpu не буде. У safari ці api з’являться на початку 2022 року. Але для того щоб чудеса стали доступними звичайним користувачам цього недостатньо. Як завжди, щоб це сталося доведеться попрацювати розробникам. Самі по собі api не працюють. Вони щось на зразок корисних копалин, наприклад залізної руди. Щоб руда перетворилася на щось корисне, професіонали повинні над нею попрацювати. Тому чудеса з’являться трохи пізніше, але занадто багато часу це не займе. Розробники, в основному, знають що таке webgpu, а багато хто з них його освоїли і використовують при першій можливості, у кого-то навіть є готові додатки використовують webgpu.

І чим більшій кількості користувачів будуть доступні браузери з підтримкою webgpu, тим з більшою охотою розробники будуть використовувати ці api. Я не до кінця впевнений в успіху safari 15, навіть незважаючи на зусилля apple поєднати інновації зі здоровим глуздом. Але навіть якщо з safari все буде в порядку, підтримка webgpu ще й в google chrome зайвою не буде. Google попередніше ніж apple, компанія пообіцяла що webgpu з’явиться в google chrome 99. У версії”для всіх”. На початку 2022 року. Поки, мабуть, лише в chrome 99 для macos, але поява webgpu в chrome для ios і для ipados – питання часу.

Що таке safari technology preview

У apple є окрема версія safari з експериментальними функціями. Це і є safari technology preview

Safari technology preview – це браузер для розробників, або “не для всіх”. Повноцінний браузер, яким можна користуватися як звичайним safari, але який ще й полігон для випробування і обкатки нових ідей. Перша його версія вийшла в березні 2016 року, коли, як вважають ті хто любить ненавидіти тіма кука, “apple зовсім перестала займатися safari”. 1 вересня цього року вийшла 131 версія safari technology preview, з виправленням помилок і поліпшенням продуктивності. Metal це низькорівневий api-інтерфейс 3-мірної графіки і графічних обчислень.

Як в macos

Розроблений apple, вийшов у світ в червні 2014 року, в ios 8. Замінив собою opengl (api 3-мірної графіки) і opencl (api дозволяє використовувати виняткові обчислювальні здібності графічних процесорів для обчислень не пов’язаних з графікою). Забавно, але факт: opencl був розроблений apple, і вперше з’явився в серпні 2009 року, в mac os x snow leopard. Як і webgpu, metal обходиться без посередників, працюючи безпосередньо з графічними процесорами. Використовується в ios, ipados, macos і tvos.