Zink i Turnip jako uzupełnienie Linuksa na Androidzie

in polish •  2 years ago 

Projekt Termux o ile skupia się na możliwie dużej kompatybilności w celu uruchamiania aplikacji Linuksowych na Androidzie, ma dość dużą wadę, która od lat jest trudna do ogarnięcia, a mianowicie brak OpenGL. A dokładniej chodzi o akcelerację 3D (bo OpenGL nie wymaga akceleracji, można odpalić rendering na procesorze XD).

Jest to problem, który spędza sen z powiek pewnie 5 osobom. Pozostałym brak Wine i multiliba, ale nad tym też są prace ;)

Gdyż powiedzmy wprost - Smartfony są coraz wydajniejsze i zazwyczaj tańsze od zwykłych komputerów. A jeśli ktoś nie wymaga za dużo od komputera to coraz lepiej wygląda opcja z wykorzystaniem smartfona.

Jest jednak opcja uruchomienia OpenGL na Termux (i stąd droga do Linuksa). Nie jest to może najlepsza opcja na świecie - czyli po prostu natywne korzystanie z OpenGL, ale mimo to da się coś już z tym zrobić. Można też czekać na faktyczne wsparcie OpenGL ES, ale nie wiem czy coś się dzieje w tej materii.

Turnip

Turnip jak rozumiem jest sterownikiem Linuksowym / Androidowym, który pozwala na dostęp do karty graficznej bez wykorzystania Roota. Niestety za wiele nie można się o tym dowiedzieć. Dzięki czemu Termux może odwołać się do urządzenia i korzystać z niego na ile to możliwe.

Zink

Zink to konwerter kodu Vulkan na OpenGL. Jest o tyle ciekawy, że potrafi wydajnością zmasakrować OpenGLa Nvidii. Czyli w skrócie jest tak (lub może być), że gra uruchomiona na Zinku będzie działać lepiej niż na OpenGL dostarczanym przez Nvidię na ich własnych kartach.


I co to nam daje?

No więc mamy w Termux akcelerację 3D dzięki dostępowi do sprzętu + konwersji Vulkan na OpenGL. Niestety z powodu tego, iż nowe wersje Zinka wymagają specjalnych rozszerzeń Vulkana, których nie mamy w smartfonach, musimy korzystać z wersji ciągle aktualnej, ale "starzejącej się" 22.0.0. A to sprawia, że błędów w Zinku, które zostały wyeliminowane, nie dostaniemy ;(

Oczywiście fajnie by było jeśli się uda ogarnąć OpenGLa na Termux bez takich metod. Jest pewna koncepcja z wykorzystaniem virglrenderer, ale opiszę ją w przyszłości, chociaż wolałbym ją przetestować.

https://github.com/ThieuMinh26/Proot-Setup/blob/main/Zink


Posted from https://blurtlatam.intinte.org

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE BLURT!