Технические трудности выпуска консольных игр на ПК.
Бывший руководитель отметил, что не знает причин решения Sony, но предположил, что высокие издержки на создание версий для ПК могли сыграть свою роль.
Очень часто встречаю аргументацию, что Сони игры ОЧЕНЬ-и ОЧЕНЬ сложно скомпилировать под ПК версию. Но давайте я вам расскажу как Реально проходит работа при создании Игр. И почему "издержек" для компиляции ПК версии - нет. Вообще нет.
Многие искренне думают - что ПК игры делаются на ПК, А Сони игры на Девкитах.
Но это заблуждение - которые пошло из 80х когда игры для консоли делались для картриджей. И сами консоли имели внутри себя уникальную логику, отличную от ПК - архитектуры.
И в те суровые времена были специальные "машины" для разработчиков
На которых можно было создавать например создавать графику:
Что позволяло не только рисовать "ассеты" к играм: спрайты, уровни...
Но и спланировать ФИЗИЧЕСКОЕ размешение игровых ассеов на ПЗУ внутри на картридже игры:
Ибо Картридж представлял из себя плату с распаянной ПЗУ(постоянной памяти) + некоторые микроконтроллеры с записанным на них кодом игры которые работали вместе с процессором консоли - и определяли какой контент в каком порядке выводить на терминал.
Так некоторые картриджи могли даже содержать небольшой модуль сохранения игр. Как это было на картридже GameBoy c их энерго-не зависимой памятью поддерживающейся за счет батареи:
Или даже иметь дополнительные плашки ОЗУ и микрочипы буквально расширяющие функционал консоли! Когда цена железок под конец жизненного цикла падала и/или базового функционала консоли начинало не хватать. С переходом на диски, а потом и к полному отказу от оных такие решения можно смело отнести к забытым технологиям предков!
Но вернемся в наше время. Сегодня разработка унифицировалась.
С 2000го консоли начали уходить от уникальной много процессорной архитектуры к ПК логике где есть CPU, GPU, память и видеопамять . Сегодня PS5 и XBOX , как и Стим Машинз - это буквально ПК комплектующие почти +_ идентичные СPU и GPU выпускаемыми AMD для ПК устройств. Главные отличия чипов консолей от ПК аналогов - это добавляемые модули шифрования что бы защитить консоли от пиратства.
Ну и жесткая распайка большинства компонент на материнской карте - что затруднит домашнюю "модификацию" консоли, что кстати на самом деле мало кого останавливает. Многие люди буквально меняли "модчипы" на Switch.
Так что собственно сегодня разработка ВСЕХ(!) игр ВСЕГДА(!) сначала идет на ПК-устройстве, зачастую достаточно мощном и топовом, что бы эмулировать особенности текущей или будущей консоли... Примерно так Эпик Геймз так в 2022м показывало Билд Анриала 5го на ноутбуке с мобильной RTX2080 говоря что это идентично харатеристекам железа PS5. И лично они разницы почти не видят, но девкит такщить было неудобно.
В типичном офисе внутренних студий вы увидите ровно то же что и у любой другой крупной студии что работает с ПК, а не диванах с девкитах у телеками.
Так что когда большие Боссы СОНи говорят вам о том, что у них "очень большие издержки" при портировании какой либо игры на ПК, они вам тупо врут.
Издержек нет. Они буквально около-нулевые. относительно итоговой цены разработки всей игры. Если вы запускаете игру в редакторе движка на своей рабочей ПК-машине, то значит ваш движок/игра УЖЕ рассчитано на работу на этой машине!
Более того в течение примерно 80-90% времени разработки самой игры вы, как разработчик Сони/Нинтендо/Хбокс - будете делать делать для себя игровые билды под винду.
За пруфами далеко ходить не надо. ПК- билды сони экзов постоянно утекают. Можно вспомнить утекший в 2024м ПК(!) билд Marvel Wolverine который хехе... предназначен для ПК.
А не девкита.
Или можно вспомнить как в сеть иногда попадают внутренние отладочные PC-версии игр Nintendo -которые по мнению консолехолопов и которых "Якобы" вообще не должно существовать в принципе. Ибо не барское это дело...
Другой крупный пример — масштабные сливы данных Game Freak, в которых был обнаружен внутренний компьютерный билд для тестирования Pokemon Legends: Arceus.
При желании вы можете найти еще примеры утекших ПК сборок консоле-экзов- включая ГТА6: который тейк ту не поленилось забанить даже на ДТФ :D
Почему ПК?
Потому что ПК- это база - и эта база принадлежит нам!
На ранних этапах разработки грузить игру на девкит попросту ИЗБЫТОЧНО.
Вам это не нужно пока у вас на сцене не готовы механики и уровни. И все игра еще не наросла мясом:
Перенос на девкит происходит уже в финале разработки - когда почти все для самой игры уже давно сделано и осталось только "оптимизировать" - подобрать нужные настройки графики и рендора под консоль.
Возможно даже несколько. Сейчас для консолей модно делать по два- три режима настроек графики: Качество, Производительность и Баланс.
Ну и проверить на проходимость что бы не было вылетов.
Для этого девкиты собственно и существуют. Это вариация самой консоли, со снятыми ограничениями на доступ к шифрованию лицензионных ключей и модификации содержимого. Что позволит быстро перезаливать билды с разными пресетами качества и проверять настройки и производительность в них. А так же верифицировать финальный билд игры под заливку в консольные магазины.
Так что на самом деле Консольным разработчикам нужно сделать для создания полноценного билда для ПК, а не рабочей сборки под топовые машины студии?
По сути три вещи :
1. Перерисовать меню UI/UX настроек под ПК. Что бы дать возможность выбирать свои настройки . Это самая сложная часть работы - на десяток недель. Некоторые не делают и этого оставляя пэкашников наслаждаться консольным UI без особых возможностей сменить какие либо настройки. Так же если игра шутер - то нужно убрать AimAssist или сделать его опциональным под геймпад.
2. И проверить "предельные" комбинации из зоопарка машин на которых игра планирует запускаться. И проверить на вылеты/проходимость при приемлемом Фепесе.
3.Переключить в движке всю привязку к базовым консольным сетевым сервисам, и добавить вместо них привязку к нужному магазину: steam, gog, egs и т д. для работы ачивок и сетевой игры.
Все!
Потому что мало кто понимает - но Движок и Игра и Редактор на котором оное делают - это все составные части одного и того же .
Когда игру делают на ПК и игра запускается в редакторе движка - значит все вопросы компиляции движка под виндоуз-платформу уже(!) решены. Девелоперский билд УЖЕ использует библиотеки DirectX или Вулкана. А значит у движков эклюзивных игр "сони/нинка" эксклюзивов - никогда не должно быть проблемы собрать билд под ПК. Но большие босы хотят об этом умолчать... хотят скрыть политическое нежелание, за инженерными сложностями.
Если бы у них была эта проблема - разработка игры чисто физически не могла бы идти на ПК - машинах в офисах. Пришлось бы заказывать специализированную технику.
Что кстати реально есть... но хех не на консолях - а на технике Apple, где вам понадобится MAC OS для компиляции билда под технику Эпл.
Так как Эпл уходит от IBM -совместимой архитектуры в сторону своих решений на универсальных чипах серии М. Это раньше можно было создать Химачи, а сейчас уже нет.
Что иронично, так как SDK консоли как инструмент сборки игры под консоль/девкит, вы можете запускать со своей ПК машине, когда игра собственно готова, это позволит такому движку как юнити/годот/анрил собрать билд под консоль/девкит.
А на МакОсь вы должны будете скопировать все исходники проекта запустить внутри MAC OS редактор и только потом компилировать.
Так у нас остается только вопрос - откуда вылезают все косяки и сложности с портами старых консольных игры на ПК?
Ответ прост - от Разгильдяйства.
Самая частая проблема из за которой многие желанные консольные игры - такие как Бладборн от Мидзаяки не может выйти на ПК, или быть хотя бы перевыпущена с 60 кадрами на пс5 - это проеб ПК - исходников.
У Сони остается на руках только Shipping Build под консоль. То есть по сути программа в виде машинных кодов заточенную под конкретное железо. И что бы превратить этот набор машинных кодов в игры на ПК, нужно будет уже постараться.
В Частности вам понадобится ДИЗАССЕМБЛЕРИТЬ ВЕСЬ КОД, найти места работы SDK сони, которые во время компиляции встроило доступ к драйверам консоли, убрать их ручками заменив на Виндовы аналоги. В мире не так много студий специализирующейся на такой кропотливой работе. И именно тут часто вылезают все косяки "плохих" ПК портов.
Впрочем вы всегда сможете использовать Эмулятор Консоли -суть которого сводится к тому что бы перехватывать запросы "уникальные" для команд железа консоли и менять на аналогичные "команды" к винде. Увы создание эмулятора — сложная задача, требующая большого опыта программирования у гика, знаний точной информации об устройстве эмулируемой системы. Поэтому эмуляторы одной и той же системы могут различаться как в достоверности эмуляции, так и в требованиях к устройству.
Надеюсь эта заметка будет полезна, для понимания как реально происходит разработка игр и где главный затык в выпуске игры на той или иной платформе. Это не ПК, и даже не зоопарк ПК машин. Это большие босы которые хотят монополизировать отрасль, загнав всех в свое стойло, и начав всех доить. И это Халатность - из за которой исходники игры в редакторе становятся утеряны.
Компиляции готовой игры под ПК и консоль - это лишь незначительные технические трудности, которые легко решаются за условный месяца -двух работы парочки специалистов.