Перший погляд: Valve має відкритий вихідний код Lepton, рівень сумісності Android, створений для гарнітури Steam Frame, що дозволяє розробникам віртуальної реальності переносити існуючі ігри Android на пристрій без необхідності переналаштовувати їх для абсолютно іншої платформи. Нещодавно доступний код також детально описує, як Valve розробляє середовище Android для VR-ігор на SteamOS, охоплюючи все: від доступу до графіки до інструментів розробки та профілювання.
Код тепер доступний через репозиторій Valve GitLab.
Випуск став слідом за запуском Steam Frame і базується на березневому оголошенні Valve про Lepton разом із вимогами сертифікації Steam Frame Verified.
З точки зору мети, проект схожий на Proton, інструмент Valve для запуску ігор Windows на SteamOS і Linux, хоча він має інший технічний шлях: замість перекладу програмних інтерфейсів Windows Lepton забезпечує спеціально створене та сумісне ігрове середовище Android.
Valve тримала це середовище навмисно вузьким. Lepton не призначений для того, щоб зробити Steam Frame універсальним пристроєм Android, а також не призначений для підтримки всіх програм Android. Щоб зменшити витрати, програмне забезпечення вимикає служби Android, які не потрібні для гри — компроміс, який може вплинути на програми, які покладаються на ці служби.
Lepton створений для тісної роботи з хост-системою SteamOS, установкою хост-бібліотек для графічних драйверів, Steam і Steamworks, а також шарів Vulkan. Valve перераховує підтримку графічних стеків, включаючи Mesa та Zink, а також інструменти Vulcan для потужного відтворення та оптимізації відтворення.

Ці можливості важливі для VR-ігор, де ефективність і стабільна частота кадрів є критично важливими для комфорту та якості зображення. Відкриваючи графічний стек хоста для середовища Android, схоже, що Valve уникає деяких накладних витрат, які можуть виникнути з більш ізольованим контейнерним підходом.
Проект також постачається з інструментами для розробників для перенесення ігор на платформу, включаючи підтримку налагоджувачів, таких як strace, GDB, LLDB і RenderDoc, а також Perfetto для профілювання продуктивності. Плоске вікно програми приховано за замовчуванням, хоча розробники можуть відкрити його для тестування та усунення несправностей.
Valve каже, що Lepton працює без root-доступу або інструментів конфігурації root-рівня, і кожен процес в екземплярі Lepton працює як неroot-користувач. Згідно з проектною документацією, немає примусового розділення між програмами в одному екземплярі, тому очікується, що кожна програма працюватиме в окремому контейнері Android.
Для розробників відкритий вихідний код пропонує чітке вікно в підхід Valve до підтримки ігор Android на SteamOS, включаючи використання основних графічних бібліотек, шарів Vulkan і скороченого стека програмного забезпечення Android. Це також дає розробникам Linux платформу для експериментів з іншими способами використання, хоча Valve попередила, що вони виходять за межі основної мети Lepton.