Beta
Платформа Киберспорт.рф в бета-тестировании — возможны ошибки, часть функций дорабатываетсяПодробнее →Платформа Киберспорт.рф в бета-тестировании — возможны ошибки, часть функций дорабатываетсяПодробнее →
esport

ПК-версию LEGO Marvel Super Heroes перенесли на Android с помощью статической рекомпиляции

Автор: PlayGround.ru

ПК-версию LEGO Marvel Super Heroes перенесли на Android с помощью статической рекомпиляции

Энтузиаст под ником ttom795 представил проект LMS_Android, представляющий собой неофициальный нативный порт компьютерной версии LEGO Marvel Super Heroes 2013 года для мобильных устройств на базе Android. В отличие от запуска через популярные трансляторы и эмуляторы Windows вроде Winlator или Mobox, этот проект использует метод статической рекомпиляции исполняемого кода x86 напрямую под архитектуру ARM64.

Графическая подсистема мобильного порта функционирует на базе модифицированной библиотеки dxvk-native версии 1.9.2b, транслирующей инструкции Direct3D 9 в графический API Vulkan 1.1. Разработчик также рекомпилировал оригинальную библиотеку D3DCompiler_43.dll, поэтому игра способна обрабатывать шейдеры силами графического процессора смартфона прямо во время работы и сохранять их в кэш для ускорения последующих запусков.

В свежем релизе под номером 0.3.1 проект получил полноценный графический лаунчер, созданный по образу и подобию мобильных версий LEGO Batman и The Elder Scrolls 5: Skyrim. Стартовое меню позволяет выбрать каталог с файлами игры на накопителе или карте памяти, проверяет целостность необходимых компонентов и дает возможность подключать кастомные графические драйверы, включая сборки Turnip через библиотеку libadrenotools.

В меню настроек лаунчера также добавили экспериментальную опцию программного декодирования текстур формата DXT силами центрального процессора, призванную устранить графические неполадки на чипах Mali. Вместе с этим автор устранил вылеты из-за недостающих процессорных инструкций набора MMX и исправил математическую обработку векторов нулевой длины в шейдерах.

Скомпилированный исполняемый код теперь собирается с уровнем оптимизации O2, а потоки распределяются по всем ядрам чипсета благодаря устранению критической ошибки в кэше вызовов. За вывод изображения, звук и управление отвечает библиотека SDL2 версии 2.30.9, которая обеспечивает поддержку физических геймпадов с раскладками Xbox и Nintendo, а также выводит настраиваемые сенсорные кнопки на дисплей.

Для работы порта требуется 64-битное мобильное устройство под управлением Android 9 или новее с поддержкой Vulkan 1.1, минимум 3 ГБ оперативной памяти и около 12 ГБ свободного места. Автор проекта не распространяет игровые ассеты, поэтому для создания рабочей версии пользователям требуется легальная копия игры из сервиса Steam.