Отсутствие игр для Windows на Arm может создать впечатление, что разработка игр для этого оборудования сложна. Однако это не так. Qualcomm Snapdragon X - это новинка, но это лишь последняя глава в десятилетней борьбе Microsoft за то, чтобы сделать Windows на Arm жизнеспособной. Microsoft и Qualcomm ранее сотрудничали над Snapdragon 8cx, анонсированным в декабре 2018 года. А операционная система Microsoft, ориентированная на Arm, Windows RT, была представлена еще в 2011 году (хотя вскоре была прекращена в пользу внедрения Arm во все версии Windows).
Путь к успеху
Это был долгий путь. По мере продвижения Microsoft внедряла инструменты, облегчающие разработку для Windows на Arm. Windows SDK, который многие разработчики используют в качестве отправной точки при создании для Windows, уже много лет предлагает компилятор Arm.
Разработанная Spacefarer R&D, эта игра доступна на Windows как для x86, так и для Arm. "На самом деле разработка на Windows и других игровых консолях не так уж и отличается", - сказал Джейк Джексон, разработчик из инди-студии Spacefarer R&D, которая разработала экшн-приключенческую игру The Dawning Clocks of Time Remake, доступную на Windows как для x86, так и для Arm. "Фактически, поскольку мы сначала разрабатывали игру как проект для Nintendo Switch, который действительно использует чип Nvidia Tegra Arm64, мы уже с самого начала выполнили основную оптимизацию и работу с графическим конвейером."
Опыт Джексона может быть не актуален для каждого разработчика игр, но он определенно представляет многих. Nintendo Switch чрезвычайно популярен по всему миру и является очень распространенной целевой платформой для разработки игр. Многие известные инди-игры, такие как Stardew Valley, Dead Cells и Hollow Knight, доступны на Switch.
Если игра может работать на Arm-основе Nintendo Switch, почему бы ей не работать на Windows?
Аарон Джайлс, разработчик, работавший в Microsoft и помогавший перенести Windows на Arm, поделился похожими мыслями. Джайлс ушел из Microsoft в 2021 году и теперь работает над различными проектами. Один из них - DREAMM, эмулятор классических игр LucasArts. (Джайлс был программистом в LucasArts в середине 90-х.) Джайлс разработал версии DREAMM для x86 и Arm как для Windows, так и для macOS.
"DREAMM - это немного уникальный случай, поскольку это эмулятор с большим компонентом на языке ассемблера (эмулятор процессора), который я вручную создал как для систем Intel, так и для Arm," - сказал Джайлс. "Кроме этого, это просто перекомпиляция, и все остальное работает нормально."
Проблемы распространения
Если Windows на Arm способна поддерживать игры, почему разработчики избегают ее? Дело в том, что существует ряд популярных ПК-игр, которые имеют версии для других платформ на базе Arm. Civilization VI, Fortnite, Baldur's Gate 3, Stardew Valley и Total War: Warhammer III - это высокопрофильные игры, которые могут работать нативно на оборудовании Arm, но недоступны для ноутбуков с процессорами Arm под управлением Windows.
Так в чем же задержка? Цифровые магазины, такие как Steam, GOG и Epic Games Store, не распространяют игры для Windows на Arm.
"Steamworks в настоящее время не имеет опции для распространения версии игры для Arm, хотя возможность создания очень производительной сборки в Unity существует уже некоторое время. По какой-то причине они медленно адаптируются к этому. GOG также не распространяет приложения для Arm," - сказал Джексон.
И хотя поддержка цифровых магазинов не является проблемой для Джайлса, поскольку DREAMM доступен бесплатно через его веб-сайт, он отметил, что отсутствие поддержки Arm может быть проблемой для других разработчиков. "Компиляция для Arm - это очевидный шаг для 99% вещей, поэтому вполне возможно, что отсутствие дистрибутивных площадок с поддержкой Arm является проблемой," - сказал Джайлс.
Да, это проблема. Разработка игр - это искусство, но для большинства разработчиков это также бизнес. Разработка версии игры, которую сложно распространять и продавать, явно не является хорошим бизнесом.