Марс Привлекает: Создание игры в стиле тайкуна с максимальной ретро-привлекательностью

FERGUS BAIRD / UNITY TECHNOLOGIESSenior Content Marketing Manager
Oct 29, 2025|6 Мин
Ключевое искусство из Марс Привлекает от Outlier Games, сделано с помощью Unity. Иллюстрация марсианина с лицом скелета и открытым мозгом, угрожающе (или глупо) смотрящего в камеру. Инопланетный тематический парк вырисовывается на заднем плане.
Эта веб-страница была переведена с помощью машинного перевода для вашего удобства. Мы не можем гарантировать точность или надежность переведенного контента. Если у вас есть вопросы о точности переведенного контента, обращайтесь к официальной английской версии веб-страницы.

Марс Привлекает, разработанная Outlier Games и доступна сейчас в раннем доступе на Steam, предлагает коварный поворот в жанре тайкун, ставя перед игроками задачу по заселению и управлению инопланетным зоопарком. Мы взяли интервью у Пола Фроггата, технического директора Outlier Games, чтобы узнать, как их последний релиз был собран, от работы с культовым IP до принятия правильных технических решений для создания сложного симулятора тематического парка.

Можете рассказать нашим читателям немного о происхождении Марс Привлекает? Как вы оказались в работе с этим IP?

Марс Привлекает начался с концепции игрового процесса: коварная игра тайкун о похищении людей для выставления их в инопланетном зоопарке. С концепцией на уме и очень базовым прототипом, мы начали искать IP, которые могли бы добавить индивидуальность миру игры.

Одной из первых франшиз, которая пришла на ум, был Марс Атакует! Команда была большими фанатами фильма Тима Бертона 1996 года, и после изучения прав мы влюбились в оригинальные ретро-научно-фантастические автомобили, на которых был основан фильм. Мы связались с Topps (кто владеет Марс Атакует! IP), и были в восторге, когда они заинтересовались нашей необычной концепцией для игры.

Как только у нас была концепция игрового процесса и IP, команда расширилась, и мы начали работать над созданием игры! Самой технически сложной задачей была огромная сложность создания полнофункциональной игры тайкун в духе Злой Гений, Подземелье Хранитель, Тематика Больница, и Американские горки Тайкун с небольшой (5–6 человек) командой.

Давайте более конкретно поговорим о тех вызовах – с какими креативными и техническими трудностями вы столкнулись, переводя мир Марс Атакует! в симулятор тематического парка? Как вы перевели его отличительный черный юмор в игровой процесс?

Одним из самых креативно сложных элементов создания симулятора парка Марс Атакует было на самом деле не связано с IP – жанр имеет так много отличных записей, что существует базовый уровень функциональности, удобства и сложности, которые люди ожидают от этого типа игры. Потребовались ГОДЫ, чтобы довести эту базовую функциональность до уровня, на котором игра могла бы стоять наравне с другими записями жанра. Как только мы это сделали, дифференцировать игру с механиками Марс Атакует! стало намного проще (и гораздо веселее)! Проведение встречи о самых ужасных способах пытать людей никогда не устаревает.

Марс Привлекает предлагает "сложный, основанный на потребностях ИИ персонажей", управляющий поведением каждого гостя и сотрудника в тематическом парке. Можете ли вы дать нам общее представление о том, как это работает? Как вы справились с задачей управления решениями и движениями так многих персонажей одновременно?

На самом деле мы сделали видео об этом! Структура ИИ персонажей немного изменилась в процессе разработки.

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

Одним из ключевых уроков, которые мы извлекли при создании системы, было разделение задачи на две части – место назначения и намерение. Изначально мы не разделяли намерение; например, голодный персонаж "идет к киоску с едой", но мы обнаружили, что это стало ограничением для более сложного поведения – гость может идти к киоску с едой, чтобы купить еду, но уборщик может идти к киоску с едой, чтобы отремонтировать его. Как только у нас появилась система многокомпонентных задач, мы смогли создать гораздо больше вариаций для персонажей.

На техническом уровне поиск пути использует плагин A* Pathfinding для Unity и графы сетки. Интересно, что у нас есть разные графы для разных задач, поэтому если человек хочет сбежать, он использует граф, который может находить путь через стены и препятствия (используя штрафы за движение для препятствий, чтобы они обходили их, если могут). Это означает, что если человек хочет, он может проложить путь разрушения через ваш идеально ухоженный парк.

Что стояло за решением использовать систему анимации на основе сетки вместо более традиционных скелетных анимаций? Пришлось ли вам делать какие-либо компромиссы, и как эти выборы повлияли на ваш художественный и анимационный рабочий процесс?

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

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

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

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

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

Скриншот из Mars Attracts от Outlier | Сделано с Unity. Инопланетяне выстраиваются в аккуратную очередь к аттракциону, напоминающему гигантский человеческий череп. Рельсы американских горок извиваются внутрь и наружу отверстий черепа. В правом нижнем углу инопланетянин, обрамленный интерфейсом, смотрит с недоумением.
Mars Attracts | Outlier Games

Когда дело дошло до технических основ, что привело вашу команду к выбору Universal Render Pipeline (URP)? Как этот выбор принес пользу проекту с этой особой визуальной стилистикой и плотностью персонажей?

Визуальные эффекты Mars Attracts должны были напоминать классические произведения жанра и ретро-научную фантастику, при этом соответствуя ожиданиям игроков от современной игры. Основные соображения заключались в том, можем ли мы а) сделать все с одним 3D-художником и б) чтобы игра хорошо работала даже на более слабых машинах. Доступность и стабильность URP были идеальными для создания тех окружений, которые мы хотели достичь.

Как еще вы подходили к тому, чтобы убедиться, что игра работает плавно? Какие были ваши самые эффективные стратегии для оптимизации производительности в симуляции такого масштаба?

Unity Profiler был бесценен для выявления узких мест. Из-за количества гостей большинство улучшений производительности касались неэффективности в ИИ гостей.

В качестве быстрого примера представьте себе большой парк, где у игрока есть 1,000 различных зданий, которые могут посетить гости. Если гость голоден, ему придется просмотреть 1,000 зданий, чтобы узнать, подают ли они еду. Если да, то проверяется состояние здания, чтобы убедиться, что у них есть еда в наличии, они не повреждены, у них есть персонал и т. д. Если ни одно из зданий не пригодно для использования, повторите для следующей потребности гостя (например, жажда) и повторите для 10–15 потребностей. Затем умножьте это на 500 гостей. Это 1,000 зданий x 10 потребностей x 500 гостей = 5,000,000 проверок.

Чтобы решить эту проблему, мы внедрили поисковые регионы в парке, чтобы гости могли "видеть" только здания в своем текущем регионе или соседних регионах. Это может сократить количество зданий для проверки до всего лишь 100, так что 100 зданий x 10 потребностей x 500 гостей = 500,000 проверок. Огромная экономия без каких-либо реальных изменений для игрока.

Скриншот из игры Mars Attracts от Outlier Games | Сделано с помощью Unity. Вид сверху на тематический парк внутри мира Mars Attracts. Срезовой вид неправильной структуры с множеством комнат. Структура находится внутри ограждения в красной, каменистой среде (Марс, предположительно).
Mars Attracts | Outlier Games

Вспоминая, какое архитектурное решение вы приняли в начале, которое действительно окупилось по мере усложнения проекта?

UnityEvents. Мы используем их все время. Ключевое обучение из нашего предыдущего проекта This Means Warp - это критическая важность модульного, самодостаточного кода. Использование событий Unity для связи между классами значительно снижает жесткие связи и упрощает создание новых функций.

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

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

Скриншот Mars Attracts от Outlier games в редакторе Unity.
Mars Attracts в редакторе Unity: Многие менеджеры взаимодействуют, чтобы воссоздать симуляцию игры, каждый отвечает за одну задачу в рамках GameManager.

Были ли какие-либо инструменты из Unity Asset Store, которые оказались особенно ценными, и если да, то почему?

BGDatabase – все статистические данные о зданиях и строки локализации извлекаются из Google таблиц. Это значительно упрощает обновление вещей в большом масштабе, получение отзывов от партнеров по локализации и т. д. BGDatabase помогает без проблем интегрировать это в Unity, мы используем его в каждом проекте.

Какой совет вы бы дали разработчику, который хочет создать игру в стиле тайкун, особенно с большим количеством ИИ-агентов в симуляции?

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

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

Связанный совет, который кто-то дал мне незадолго до запуска – прикрепите сохранение игрока к любым отчетам о внутренней обратной связи. Супер полезно для воссоздания их проблемы!

Скриншот из игры Mars Attracts от Outlier Games | Сделано с помощью Unity. Крупный план аттракциона в марсианском тематическом парке. Человек в желтом плавает между тремя шипами, которые, похоже, наносят электрический удар. Марсианин в белом халате управляет устройством.
Mars Attracts | Outlier Games

Марс Привлекает доступен сейчас на ПК. Исследуйте больше игр, сделанных с помощью Unity, на нашей официальной странице кураторов Steam. Читать больше историй от разработчиков на блоге Unity и центре ресурсов.