Тепер ми знаємо, що Android Q підтримуватиме серверну частину Vulkan для ANGLE, щоб полегшити розробку 2D-ігор. Читайте далі, щоб дізнатися більше про те, що це означає.
API Vulkan про підтримку Android було оголошено з Android Nougat ще на Google I/O 2016. Щоб оновити ваші думки, цей API допомагає розробникам отримати більше контролю над апаратним забезпеченням низького рівня. Такий доступ допомагає їм краще використовувати переваги обробки та графічної потужності відповідних пристроїв, а також оптимізувати ігри для максимальної гладкості. Не дивно, що правильний розподіл пам’яті та керування потоками важливі для виконання будь-яких енергоємних завдань, наприклад запуску гри. Це те, що популярні консолі, такі як Xbox One і PlayStation 4, робили протягом тривалого часу - надаючи розробникам низький рівень контролю над обладнанням всередині пристроїв.
Що також цікаво, так це те, що Vulkan є міжплатформним відкритим стандартом, орієнтованим на графічні програми на різних платформах. На початку цього року
ми знайшли підказку що Android Q може відтворювати елементи інтерфейсу користувача через API Vulkan. Це буде крок для подальшого покращення плавності системи. Тепер ми отримали інформацію про те, що Android Q точно підтримуватиме ANGLE, щоб полегшити розробку 2D-ігор.Що таке ANGLE?
ANGLE — це абревіатура, яка розшифровується як «Almost Native Graphics Layer Engine». З появою WebGL виникла необхідність у стандартизованому рішенні для підтримки рендерера. Драйвери OpenGL досить довго не були стабільними на платформі Windows. Таким чином, ANGLE підняв усе на абсолютно новий рівень, переклавши код OpenGL у Direct3D, API, який підтримується Windows. Основна мета ANGLE — зробити OpenGL портативним і доступним для всіх шляхом перекладу вмісту WebGL і OpenGL ES на апаратно підтримуваний API, доступний на платформі. Використовуючи той самий принцип, ANGLE перекладатиме код OpenGL у код Vulkan на Android, оскільки перший є офіційно підтримуваним апаратним API в операційній системі. Ймовірно, ви використовуєте ANGLE щодня, навіть не усвідомлюючи цього. ANGLE вбудований у веб-браузери Google Chrome і Mozilla Firefox для комп’ютера. Він використовується для відтворення будь-якого графічного вмісту в цих браузерах у Windows.
OpenGL ES проти Vulkan
Група Khronos наполегливо працює, щоб зробити ANGLE основним рендерером OpenGL на Vulkan. Можливо, багато хто з вас не бачить потреби позбутися OpenGL на користь Vulkan, але, безперечно, є куди вдосконалюватися. На даний момент OpenGL API вважається старовинною технологією. Спочатку він був випущений у 1992 році, тобто 26 років тому. 26 років можуть не означати багато для когось із вас, але це астрономічне число, коли йдеться про розвиток технологій. У 2016 році світ представив Vulkan — графічний API нового рівня. Але новіше не означає автоматично краще, чи не так? Дозвольте мені пояснити, чому Vulkan набагато кращий за OpenGL/OpenGL ES.
Якби ви коли-небудь мали справу з OpenGL ES, ви б знали, що це так величезний. API має понад 300 розширень і зовсім не простий у використанні. Vulkan виводить все на абсолютно новий рівень, пропонуючи набагато менший API і прямий контроль графіки. Це також легше реалізувати. Хоча Vulkan працює на нижчому рівні, ніж OpenGL ES, це означає більше можливостей для керування. У Vulkan керування потоками та пам’яттю повністю покладено на розробника гри, тому ви можете адекватно використовувати ресурси. Крім того, існує дуже невелика різниця між мобільною та настільною версіями Vulkan, що значно полегшує перенесення ігор. Коротше кажучи, Vulkan — це низькорівневий драйвер, який дозволяє розкрити весь потенціал відеокарти, наявної на конкретному пристрої.
Чому ANGLE?
Перша перевага ANGLE полягає в тому, що це платформа відкритого стандарту. Існує безліч способів зробити внесок у проект. Ви можете перевірити драйвер на своїх пристроях, повідомити про помилки, виправити помилки, допомогти розробникам знайти рішення, надіслати пропозиції, пожертвувати гроші на розробку тощо. Все це пришвидшить розвиток. Наступним великим плюсом у порівнянні з OpenGL ES є портативність і підтримка кросплатформенності. Природа ANGLE полегшує роботу як для платформ, так і для розробників ігор. Підтримувати та впроваджувати ANGLE набагато легше, ніж у попередніх реалізаціях. OpenGL настільки фрагментований, що відстеження помилок і їх виправлення на різних пристроях є проблемою для розробників. Централізація всіх необхідних драйверів в ANGLE означає, що розробникам буде простіше впроваджувати їх. Розробник ANGLE, Джеймі Меділл, підтвердив нам, що на платформі Android ANGLE отримуватиме регулярні оновлення через Google Play Store. Оновлення драйверів через вбудований торговий майданчик першої сторони є хорошою ідеєю, оскільки користувачеві не доведеться оновлювати всю систему кожного разу, коли оновлюється драйвер. Крім того, розробникам не потрібно буде возитися з кодом кожного разу, коли ANGLE щось змінює. Ось відео про те, як ANGLE може принести користь розробці ігор для Android.
Як ви бачите, ANGLE має численні покращення порівняно з OpenGL ES, що застаріла. Перший попередній випуск Android Q для розробників не так вже й далеко попереду, тож ми можемо почекати та побачити, як ANGLE працює на практиці. Відповідно до цей комміт, користувачі зможуть змусити всі програми працювати з ANGLE з параметрів розробника. Підтримка рендерера є вже об'єднані у гілку Android Pie для OEM-виробників, щоб перевірити його. Ви можете відстежувати розвиток ANGLE на веб-сайті та в репозиторії GitHub нижче.
Дякуємо старшому члену XDA XxPixX за чайові!
Сайт ANGLEРепозиторій GitHub