Mario Kart World для Switch 2 запустилась на ПК благодаря статической рекомпиляции
Энтузиаст создал проект MKW Recomp, который позволяет запускать Mario Kart World с Nintendo Switch 2 на Windows. Игра уже проходит вступительную последовательность и выводит трёхмерные сцены, но полноценный геймплей пока недоступен.

На GitHub появился проект MKW Recomp — неофициальный порт Mario Kart World с Nintendo Switch 2 на ПК под управлением Windows. Разработка основана на технологии статической рекомпиляции и графическом API Vulkan. По словам автора, игру уже удалось запустить и добиться отображения трёхмерных сцен, однако полноценный игровой процесс пока недоступен.
Как работает рекомпиляция
Проект предполагает преобразование оригинального машинного кода Mario Kart World с архитектуры ARM64 в язык C, после чего компилятор Clang создаёт исполняемый файл mkw. exe для процессоров x86-64. В отличие от традиционной эмуляции, игровой код предварительно перекомпилируется для непосредственного выполнения на ПК, а функции операционной системы Nintendo Horizon заменяются собственной реализацией.
Разработчик сообщил о завершении нескольких важных этапов. Весь необходимый код игровых модулей main и sdk успешно преобразуется в C, включая поддержку специфических инструкций ARMv8. 3. Также реализованы базовые системные службы Horizon, отвечающие за память, файловую систему, звук и контроллеры.
Значительного прогресса удалось достичь и в графической подсистеме. Автор адаптировал обработку команд NVN 2, используемого Nintendo Switch 2, и реализовал преобразование шейдеров архитектуры NVIDIA Ampere в формат SPIR-V для последующего выполнения через Vulkan. Благодаря этому Mario Kart World, по его утверждению, проходит вступительную последовательность и выводит настоящие трёхмерные сцены.
Отдельной проблемой стали массивы текстур ASTC с разрешением до 8K, создающие высокую нагрузку на видеопамять. Для их обработки предусмотрено автоматическое переключение на сжатие BC3, позволяющее уменьшить требования к видеокарте.
В основу проекта легли наработки TotK Recomp для The Legend of Zelda: Tears of the Kingdom и DKB Recomp для Donkey Kong Bananza. Автор также использовал исследования графической архитектуры Switch 2, выполненные разработчиками Eglantine, Mesa NAK и Ryujinx. Часть вспомогательного кода, тестов и документации создавалась с использованием ИИ-инструментов.
Исходный код MKW Recomp опубликован на GitHub. Проект ориентирован на базовую версию Mario Kart World 1. 8. 0. Готовых сборок для скачивания пока нет: пользователям предлагается самостоятельно компилировать приложение из файлов собственной копии игры. В репозитории отсутствуют игровые ресурсы, ключи и образы Nintendo Switch 2. Точных сроков выпуска работоспособной версии автор не называет.




Обсуждение
Войдите, чтобы присоединиться к обсуждению.
Загружаем обсуждение…