Что нужно знать о портировании игр на консоли

Рассказывает основатель студии Mandragora.

Для многих инди-разработчиков консоли остаются неизведанной территорией. В то время, как выпуск игры на Steam — относительно простое и понятное дело, релиз на PS4, Xbox One и Nintendo Switch сопряжён с трудностями как бюрократическими, так и техническими.

Мы пообщались с Евгением Кистеревым, основателем студии Mandragora, которая 26 февраля выпустила на Switch свой «рогалик» SKYHILL. Он рассказал, к чему готовиться тем, кто хочет выпустить свои тайтлы на консоли.

Что нужно знать о портировании игр на консоли

Предположим, я сделал игру для ПК, а через пару лет решил, что неплохо было бы портировать его на консоли. Возникнут ли у меня какие-то проблемы при переносе игры на другую платформу? Нужно ли думать о потенциальном порте во время разработки?

Подумать о порте, не имея предыдущего опыта, не получится. Но некоторые вещи всё же можно предусмотреть. Первым делом я бы проследил за тем, что ресурсы игры грузятся ассинхронно и игра никогда не подвисает на одном кадре больше чем на секунду, даже во время загрузки локаций.

В случае, если ваша игра сделана на Unity, то, конечно же, придётся перейти на одну из последних версий движка. Очень часто с этим не возникает никаких проблем. Естественно, игра должна идеально поддерживать управление с геймпада во всех GUI и механиках.

Для SKYHILL нам потребовалось полностью переработать управление, перерисовать интерфейсы под управление с геймпада. Также во время создания этажей наша игра «зависала» на несколько секунд, перед тем как начать загрузку. Пришлось переписывать механизм генерирования контента так, чтобы за один кадр генерировался только один этаж. Загрузка игры из-за этого увеличилась в два раза по времени, но стала более безопасной.

SKYHILL
SKYHILL

Я хочу выпустить свою игру на PS4, Xbox One и Nintendo Switch сразу. Мне надо связываться с платформодержателями? Какие данные они от меня потребуют?

Ну, во-первых, для разработки под любую консоль нужен девкит, который не купишь в обычном магазине. Первый шаг — стать официальным разработчиком под определённую платформу. У каждого платформодержателя свои правила. Но обычно сильно помогает наличие выпущенных проектов или прямые контакты с представителями платформ.

Я думаю, очевидно, что это возможно, только если у вас есть юридическое лицо. Заранее я бы посоветовал подготовить дизайн-документацию для игры на английском языке. Нам сильно помогли личные знакомства с платформами и поддержка от нашего издателя.

Могут ли платформодержатели попросить внести какие-то изменения в игру?

Обычно нет, если только в вашей игре нет чего-то, что не соответствует правилам определённой платформы. Я бы посоветовал не добавлять в игру изображения, геймпады и консоли, которые можно опознать однозначно как девайсы определённой платформы. Также контент должен соответствовать возрастным ограничениям, под которые сертифицирована игра.

Что нужно знать о портировании игр на консоли

У нас была забавная история, когда одна из платформ нашла в окружении игры геймпад, похожий на геймпад от другой консоли, и попросила исправить это. Для того, чтобы вы понимали, в SKYHILL есть сцена с повешенным мужиком, и к ней не было никаких претензий.

Через какие вообще бюрократические процедуры нужно пройти, чтобы выпустить игру на консолях?

Нужно пройти барьер и убедить платформодержателей в том, что вы — перспективный и реальный разработчик, с которым стоит сотрудничать. Получить возрастные рейтинги на игру. Ну и главный страх, который вы слышите от тех, кто занимался портированием — процесс сертификации.

У каждой платформы есть много критериев качественного продукта и необходимо им соответствовать. В вашу игру будут реально играть, будут тестировать на техническое соответствие стандартам. Любое несоответствие критериям платформы — отказ в сертификации и потеря времени. Есть довольно много историй, когда разработчики пытались пройти сертификацию 7-10 раз. И каждый раз это занимает недели.

Freaky Awesome
Freaky Awesome

Вообще, половина из критериев сертификации могла бы относиться и к просто качественному продукту для ПК. Что произойдёт, если у пользователя отключится геймпад во время игры? Если он нажмёт на кнопку выключения устройства в любом месте игры?

Вторая же половина относится к SDK платформ. Ваша игра должна идеально работать в экосистеме ачивок, сохранений, профилей пользователей, облачных сохранений и так далее. Если бы часть этих требований предъявлялось к играм, которые выходят на Steam, то все бы от этого только выиграли.

В среднем, если всё складывается удачно, сколько времени уходит на бюрократические процедуры? С какой консолью проще, с какой сложнее?

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

Что касается PS4 и Xbox One, то это — уже развитые платформы с кучей механизмов и они требуют гораздо больше серьёзного подхода и технического уровня. У тех, кто давно занимается портированием, есть самописные «обёртки», к которым привязывается любая игра, что сокращает время портирования в разы. Проблемы возникают когда пишешь это в первый раз. Это что касается технической части.

Что нужно знать о портировании игр на консоли

С точки зрения бюрократии я бы не выделил какую-то платформу. Тут именно есть большая разница. Если подступаешься к этому вопросу в первый раз (как, наверное, большинство из тех, кому эта статья интересна), то очень часто просто не знаешь с чего начать.

Путаешься в порталах, настройке девкитов, ищешь, как получить устройство, если зарегистрирован в СНГ. Получаешь возрастные рейтинги для разных регионов опять же. Во всём этом предстоит разбираться.

Nintendo и Microsoft сейчас более открыты для общения, если посмотреть в целом. У Xbox есть программа ID@XBOX, которая направлена как раз на небольших разработчиков. Nintendo тоже благосклонно относится к инди-разработчикам, поддерживают интересные проекты. У них же даже есть направление Nindies.

Для портирования мне ведь обязательно потребуется девкит? Где его достать?

Тяжело ответить прямо. Скажу лишь, что для разработчика из СНГ это не самая тривиальная задача.

Девкит PlayStation 4
Девкит PlayStation 4

Могут ли быть какие-то сложности из-за выбранного мной движка? Или без разницы?

Самые распространенные движки, конечно же, поддерживают сборку под консоли. Если вы делаете игру на Unreal или Unity, то проблем точно не будет. По крайней мере, сам движок не доставит проблем. Насколько я знаю, у Game Maker тоже эти проблемы решены (стоит лишь уточнить насчёт полноценной поддержки Nintendo Switch). А другие движки я бы и не советовал использовать в наше время кросс-платформенной разработки.

Мы разрабатываем все наши игры на Unity. Движок всегда позиционировался как кросс-платформенный и в этом его главный плюс.

Если я сам ничего не понимаю в портировании, куда можно обратиться? К издателям?

Существуют издатели, которые специализируются на портировании и выпуске игр на определённые платформы. Так мы поступили с нашей игрой Freaky Awesome. Мы обратились к нашим партнёрам из BadLand в Испании.

Игру на Steam мы выпускали сами, а вот портировать на консоли после болезненного опыта SKYHILL мы не решились и отдали Xbox One, PS4 и Nintendo Switch издателю. Они полностью взяли процесс портирования и сертификации на себя. Также существуют аутсорс студии, которые за фиксированные деньги предоставляют портирование и тестирование на соответствие требованиям сертификации.

Что нужно знать о портировании игр на консоли

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

А со SKYHILL было что-то ещё болезненное, кроме технических проблем, описанных выше, и случая с геймпадом?

В целом, когда приступаешь к портированию, то чувствуешь себя очень глупым. Знаете, как когда ты учишься в университете, и тебе задают какую-нибудь фигню, а ты даже не понимаешь, что от тебя требуется.

Это уникальные требования к игре, которые нужны только для определённой консоли. Даже такие тривиальные задачи, как выдача ачивок, например, могут обернуться проблемой, которую необходимо решать несколько дней.

Обычно опытные разработчики закладывают на портирование игры на три консоли полгода. На деле часто получается от одного до трёх месяцев. Но если у вас нет опыта совсем, то вы легко можете убить год жизни на это.

Что нужно знать о портировании игр на консоли

На консолях нет такого многообразия магазинов цифровой дистрибуции, как на ПК. По сути, платформодержатели — монополисты. Сказывается ли это на проценте от выручки?

Он не сильно отличается от Steam. Но детально тут вам никто не ответит, конечно же. Вообще процент от прибыли — это не главное о чем стоит думать. Доступ к новой аудитории, которая привыкла покупать игры не за копейки, и меньшее количество игр в магазинах на консолях гораздо важнее.

Есть ли вообще смысл для инди выходить на консолях? Можно ли на них заработать больше, чем на ПК?

А причём тут «инди или нет»? Я не вижу разницы между крупной студией и инди из пары человек в плане бизнеса. Если есть возможность выйти на консоли, если ваша игра приносит деньги с ПК, то с консолями можно начать зарабатывать больше.

Разработчик игр создаёт интеллектуальную собственность. Вполне разумно постараться обеспечить как можно больше источников долгосрочных доходов для созданного продукта. Например, для SKYHILL Nintendo Switch — уже шестая платформа (игра уже вышла на Steam, IOS, Android, PS4 и Xbox One) и на каждой из них мы зарабатываем. Хотя игра вышла на Steam в 2015 году, она всё ещё живёт.

Что нужно знать о портировании игр на консоли

Freaky Awesome вышла на Steam, PS4 и Nintendo Switch. Готовится к выпуску на Xbox One. Со следующей игрой мы надеемся на одновременный релиз на ПК и всех консолях.

Как устроен фичеринг в консольных магазинах? Как можно сделать свою игру более заметной?

У каждой платформы свои правила относительно фичеринга. Обычно на старте игра попадёт в списки новинок. А дальше всё зависит от конкретной игры и общения с менеджерами платформы.

Какого-то фиксированного для всех количества показов на главной, как в было Steam, на консолях нет?

Его на Steam ведь уже давно нет. Есть общие правила для показа новинок, игр со скидками. А насчёт фичеринга нужно договариваться.

Кто назначает цены на консольные игры? Могу ли я сам управлять ими и устраивать распродажи?

Как и на других платформах, таких как Steam и AppStore, управление скидками лежит на плечах издателя игры, но также есть возможность обсудить планы по скидкам с менеджером от платформы и запланировать что-то специальное под определённые события.

Что нужно знать о портировании игр на консоли

А как обстоят дела с региональными ценами на разных консолях? Обязательно назначать их?

Нет, не обязательно. На некоторых платформах эта возможность ограничена и нельзя назначить специальную цену для определённой страны. Платформа также может «посоветовать» сильно не снижать цену для региона.

Но окончательное решение всё равно за издателем или разработчиком? И это справедливо для всех консолей, или у каждой есть свои особенности?

Окончательное решение всегда за издателем игры, а не платформой, конечно.

На PlayStation 4, например, для мультиплеера в одних играх требуется PS Plus, а в других — он не нужен. Кто принимает решение о том, будет ли подписка обязательной для сетевых режимов: разработчики или платформодержатели?

У нас нет игр с онлайн мультиплеером на консолях, но всё, что касается уникальных условий по попаданию в подписочные сервисы, обсуждается индивидуально.

В целом, какие инструменты предлагают платформодержатели для отслеживания статистики и управления страницей игры?

Тяжело ответить прямо, но они гораздо скуднее, чем статистика, которую нам даёт Steam и сами системы со стороны разработчика выглядят более устаревшими.

Что нужно знать о портировании игр на консоли

А если вам потребуется какая-то определённая информация, которую платформодержатель не предоставляет по умолчанию, вы можете её запросить?

Если вы можете объяснить, зачем вам это нужно и у платформы есть возможность предоставить вам информацию, то стоит попробовать. Причём это касается не только консолей, но и Steam, например.

Почему многие инди-студии выпускают свои игры именно на Nintendo Switch? Это связано с политикой самой компании в отношении независимых разработчиков, архитектурой консоли или условиями, которые предлагает Nintendo?

Здесь именно весь комплекс факторов. Многие издатели ААА не имеют возможность оптимизировать свои игры под слабые устройства. Вполне логично, что Nintendo нужно было идти к разработчикам инди-игр и просто менее требовательным к железу проектам, чтобы предложить своим игрокам больше выбора, после того как они пройдут Zelda и Mario. Также портирование на Nintendo Switch технически проще, если не считать оптимизацию.

А какие именно проблемы с оптимизацией возникают при разработке на Switch?

У небольших игр, как правило, не должно быть проблем, если они хорошо оптимизированы. В случае со SKYHILL и Freaky Awesome проблем с оптимизацией не было вообще.

Для более требовательных игр с 3D или большим количеством визуальных эффектов это может стать также серьёзной проблемой. Это же касается игр, которые используют много физики или просто плохо оптимизированы. ПК прощает гораздо больше.

131131
31 комментарий

Для портирования мне ведь обязательно потребуется девкит? Где его достать?
Тяжело ответить прямо. Скажу лишь, что для разработчика из СНГ это не самая тривиальная задача.

21

Комментарий удалён модератором

Чаще всего всего регистрируют контору в стране куда нет проблем с отправкой девкитов. Например в Гонконге, это стоит 500 долларов и пару недель. Потом едут в это страну и забирают консоль. Другой вариант можно попробовать договорится с вендором о встрече на конференции, например GDC и забрать.

Почему многие инди-студии выпускают свои игры именно на Nintendo Switch?

Потому что слишком мало полноразмерных игр и игроки оттого очень голодные. Купили консоль, прошли Марио с Зельдой - и всё, наступил ногеймз, рука сама собой потянулась к инди. Причем цены по сравнению со Стимом можно накручивать очень высокие, покупатель к такому привык. Грех упускать такую золотую жилу.

6

... или же ваш издатель может заняться портом ;) Жень, отлично расписал!

5

Для нас вывод таким и оказался. Ну теперь я спокоен, что ты прочитал статью и не отписался мне в личку. Как эксперт по нарушению NDA :D

Спасибо, полезная инфа!

4