Создание Zenith: Последний город

Jul 18, 2025
Обложка игры ZenithTheLastCity

Узнайте, как Ramen VR завоевал "геймдев на сложном уровне" и объединил игроков в первом в мире кроссплатформенном VR MMO.

Zenith: Последний город

Как небольшая удаленная команда создает MMO в VR? С гибкой платформой разработки, многопоточным программированием, надежными инструментами DevOps и поддержкой активного сообщества, Ramen VR запустил хорошо оптимизированную многоплатформенную игру, которая радует игроков и открывает новую эру игр.

Задача

Создание успешного высокопроизводительного VR MMO для всех основных VR платформ

Платформы

PlayStation® VR, PlayStation® VR2 Quest, Quest 2, Rift, SteamVR

Количество сотрудников

22

Местоположение

Удаленный

Сделать амбициозную ставку

Сделать амбициозную ставку

Энди Цзен и Лорен Фрейзер встретились на Oculus Launch Pad в 2016 году, где они сблизились благодаря общему интересу к MMO и исекай аниме. Пара увидела возможность объединить эти жанры и создать новый, погружающий MMO-опыт в VR. В 2019 году они уволились с работы, основали Ramen VR и начали работу над Zenith: Последний город.

ZenithTheLastCity игра сокровищница открыта

Результаты

  • Запустили VR MMO с командой всего из 15 человек
  • Достигли прорывного успеха с 1-м местом на Quest и Steam при запуске
  • Собрали более 45 миллионов долларов инвестиций на сегодняшний день
  • Исключили потерю данных проекта с помощью Unity Version Control
ZenithTheLastCity в игре лава как уровень

Финансирование за счет амбициозного видения

Создание Zenith потребовало смелого шага: Цзен и Фрейзер финансировали раннюю разработку из собственного кармана. «Название нашей студии происходит от всего, что мы могли себе позволить есть в то время», шутит Цзен.

Ангельский инвестор изменил все. Скоро Ramen VR был зачислен в программу акселератора Y Combinator и собрал 280 тысяч долларов за 45 дней с рекордной кампанией Kickstarter. Спонсоры были впечатлены масштабом проекта и решимостью студии сделать это.

«Никто, кто когда-либо создавал MMO, не стал бы пытаться сделать это», говорит Цзен. «Стартап, VR, MMO, кроссплатформенность – это геймдев в сложном режиме!»

Фотография команды разработчиков ZenithTheLastCity в черно-белом цвете

Поиск правильных инструментов

Цзен и Фрейзер ранее сотрудничали над удостоенным наград проектом Unity – VR MOBA, Conjure Strike – и были уверены, что могут справиться с чем-то еще более амбициозным.

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

Ramen VR запустила Zenith с командой из 15 человек, но теперь у них 22 основных члена команды. При выборе новых инструментов разработки они удостоверяются, что они настраиваемые, легко интегрируемые, хорошо работают с существующими системами и доступны как для технических, так и для нетехнических участников.

Сцена игры ZenithTheLastCity загружена в движке Unity

Создание основы с помощью DOTS

Как игры на основе систем, MMO требуют сильных, масштабируемых технических основ. На ранних этапах разработки Ramen VR организовала системы Zenith с использованием MonoBehaviors, но выполнение логики сотни раз на сотнях идентичных GameObjects было неэффективным. Они использовали фреймворк Entity Component System (ECS) Unity, ключевую опору Data-Oriented Technology Stack (DOTS), чтобы избежать недостатков объектно-ориентированного программирования.

«MMO – отличное применение для ECS», отмечает Фрейзер. «Zenith требует, чтобы тысячи сущностей сосуществовали одновременно, и ECS позволяет нам работать в масштабе.»

Игра ZenithTheLastCity настраивается в движке Unity

Выбор правильных рабочих процессов

В новом рабочем процессе каждый «актер» GameObject (игроки, мобы, коллекционные предметы) имеет соответствующую сущность ECS. ECS проходит через GameObjects и проверяет соответствующие теги, вызывая логику, когда они обнаруживаются.

«Было приятно иметь возможность выбрать рабочий процесс, подходящий для ситуации. Мы могли бы использовать чистые объекты или чистые сущности – но я не думаю, что вы должны выбирать», говорит Фрейзер.

ZenithTheLastCity в игре кадр летающего корабля

Избегание ограничений по количеству запросов

ECS также помогла с инфраструктурными проблемами. Более 120 000 игроков подписались на альфа-тест Zenith, и Ramen VR недооценили нагрузку, которую это создаст на их серверах. Когда большое количество игроков выходило из игры, серверы превышали лимиты хранения, и игроки теряли данные сохранений. Чтобы решить эту проблему, команда создала тег ECS для отслеживания прогресса квестов. «Наша система ECS проверяет теги, и когда она находит один, она помещает его в очередь, извлекает каждые X секунд и записывает на внешнее хранилище», объясняет Фрейзер.

ZenithTheLastCity игрок в игре сражается с большим противником

Оптимизация визуальных эффектов на разных устройствах

Zenith — это многоплатформенная MMO, поэтому оптимизация графики для всех основных VR-устройств была критически важна, чтобы игра достигла как можно большего числа игроков. Создание VR-игр означает отрисовку в два раза большего количества объектов GameObjects, с более высоким разрешением и более высокой частотой кадров, чтобы обеспечить хорошее погружение и уменьшить укачивание в VR. Поэтому они выбрали Universal Render Pipeline (URP).

«Universal Render Pipeline был лучшим выбором для нас, потому что мы выпускали на PC, Android (Oculus Quest) и PSVR», говорит Фрейзер. «URP позволил нам создавать для всех VR-платформ.»

ZenithTheLastCity рендеринг в игре футуристической структуры в городе

Снижение затрат на рендеринг

С Single Pass Instanced rendering URP, Ramen VR смогли отрисовать визуальные эффекты для обоих глаз в одном месте, экономя время CPU и GPU и улучшая производительность. Настраиваемость также была плюсом. «Мы редактировали стандартные шейдеры (Simple Lit, Unlit), чтобы они реагировали на изменения нашего цикла день-ночь — делая вещи более оранжевыми или красными на закате, добавляя синий оттенок ночью и так далее», говорит Фрейзер.

Студия довольна тем, чего они достигли с URP, но надеется продвинуть визуальные эффекты Zenith дальше в будущем релизе. «Многое из нашего первоначального качества было пожертвовано из-за аппаратных ограничений — в основном памяти, но также и времени GPU», говорит Фрейзер. «Теперь мы пытаемся воспользоваться такими вещами, как texture arrays, чтобы вернуть часть утраченной четкости.»

ZenithTheLastCity управление игрой узел дерева представления внутри системы управления версиями Unity

Управление файлами проекта

Чтобы обеспечить непрерывную доставку нового контента в срок, Ramen VR использует Unity Version Control (UVCS) для управления проектом. «Это позволило нам повысить нашу продуктивность, улучшить наши рабочие процессы и работать совместно гораздо легче», — говорит программист Джордан Дж.

UVCS имеет двойные рабочие процессы для художников и инженеров, и члены команды могут выбирать работать централизованно или распределенно, при этом внося изменения в один и тот же репозиторий. «Централизованный поток означает меньше несчастных случаев и несоответствий между локальным и удаленным, чем вы видите с чем-то вроде Git», — говорит Фрейзер. Ramen VR никогда не терял данные проекта с тех пор, как принял UVCS.

Персонажи игры ZenithTheLastCity

Собирая игроков вместе

Умная реализация ECS и визуальная оптимизация с URP означают, что игроки могут вместе приключаться и исследовать Zenith’s огромный мир, не испытывая замедления или потери прогресса. А масштабируемый, настраиваемый технологический стек означает, что Ramen VR готов продолжать добавлять новый контент в Zenith в течение многих лет.

«Тот факт, что мы используем Unity, снижает много сложности разработки для нескольких платформ.»

Lauren Frazier
Lauren Frazier - Ramen VR
CTO

«Работая с Zenith: Искусство окружения Последнего города, там много изменений и много больших файлов. Unity Version Control легко справляется с внесением и извлечением этих изменений.»

Jessica Sweeney
Jessica Sweeney - Ramen VR
Environment Artist

Присоединяйтесь к разработчикам по всему миру, которые используют Unity для создания успешных VR-игр.

Реализуйте свои самые большие амбиции