Android 10 i Vulkan Everywhere, czyli mała-wielka zmiana, o której cicho sza

Android 10 i Vulkan Everywhere, czyli mała-wielka zmiana, o której cicho sza

Mała rewolucja w podejściu do sterowników grafiki, fot. Shutterstock.com
Mała rewolucja w podejściu do sterowników grafiki, fot. Shutterstock.com
Piotr Urbaniak
03.09.2019 22:02

Aktualizacja pierwszych smartfonów do Androida 10 ruszyła. Siłą rzeczy wiele się mówi o nowych funkcjach systemu Google'a; ulepszonej kontroli prywatności czy natywnej obsłudze telefonów ze składanym ekranem. W cieniu idzie inna nie mniej ważna cecha. Chodzi o nowe podejście do API graficznego, z motywem przewodnim Vulkan Everywhere.

Android 10 wymaga, aby każde urządzenie z 64-bitowym czipem miało wsparcie na poziomie sterowników dla API Vulkan 1.1. Dlaczego? Bo to właśnie od tego środowiska Google wychodzi w nowej wersji projektu Angle, warstwy translacji do innych API graficznych. W chwili debiutu Angle obsługuje wyłącznie OpenGL ES, ale docelowo mówi się o wsparciu "dużego" OpenGL DirectX 9 oraz 11, a nawet Metal z urządzeń Apple'a.

Pierwotnie w założeniach Angle chodziło o to, aby łatwo uruchomić aplikacje pisane pod WebGL na innych systemach i platformach sprzętowych, bez względu na sterownik OpenGL. Biblioteka trafiła do projektu Chromium, ale to tyczyło się jeszcze czasów, gdy za punkt wyjścia obrano GLES 2.0 i 3.0. Niniejszym, o ile producent urządzenia nie zdecyduje się na samodzielną implementację, apki OpenGL ES będą odpalane na warstwie translacji.

Jest to pewne uproszczenie architektury sterowników, idące oczywiście w parze z twierdzeniem, że Vulkan kiedyś wyprze cały OpenGL i jego pochodne. Niemniej jednak można też doszukiwać się drugiego dna, jakoby Google robiło podchody pod uczynienie Androida kompatybilnym z aplikacjami innymi niż natywne. Zastrzegam tylko, ostatnie to dość daleka interpretacja autora.

Żeby była jasność: producent urządzenia cały czas może zdecydować się na własną implementację GLES, całkowicie bezpośrednią. Zapewne okaże się to wydajniejsze, bo warstwa translacji to zawsze tylko tłumaczenie odwołań, a nie bezpośrednia komunikacja sterownika z GPU. Kwestia nowej opcji, która w natłoku informacji o Androidzie 10 jakby przemknęła mimochodem.

Programy

Zobacz więcej
Źródło artykułu:www.dobreprogramy.pl
Oceń jakość naszego artykułuTwoja opinia pozwala nam tworzyć lepsze treści.
Wybrane dla Ciebie
Komentarze (33)