Megacity

Всего за 2 месяца наша команда ECS и 2 художника из группы FPS Sample разработали футуристический город с летающими машинами, сотнями тысяч высокодетализированных игровых объектов и уникальных источников звука. Это — демонстрация нашего прогресса в работе над ECS и компилятором Burst.

Доклад на Unite LA 2018

В Лос-Анджелесе многие заинтересовались ECS и компилятором Burst. Разработав демонстрацию Nordeus, показанную на Unite Austin, наши программисты игрового кода и разработчики FPS Sample создали Megacity — динамичный футуристический город, который использует «Стек информационно-ориентированных технологий» (Data-Oriented Technology Stack или DOTS) — обобщенное название всех наших проектов под знаменем «Производительность по умолчанию», включая ECS, Native Collections, систему задач C# и компилятор Burst.

Демонстрация для Unite LA разработана за 6 недель

При содействии небольшой команды внештатных сотрудников, 2 художника Unity разработали все ресурсы высокого разрешения примерно за 6 недель. Они использовали технику вложенных префабов и новые функции, позволяющие работать с очень большими массивами игровых объектов.

Требуется много сил...

для сборки Megacity. Для этого примера мы собрали все команды и технологии исследовательской группы Unity, включая новейшие функции вроде вложенных префабов и программируемых процессов рендеринга, а также существующие, например, редактирование сцены, сборка окружения, Cinemachine и стек пост-обработки. Кроме того, мы использовали функции, которые будут реализованы только в 2019 году:

  • Рабочие процессы для (очень) больших сцен
  • Звуковая система C#
  • Система HLOD
  • Система отсечения ECS
  • Асинхронная трансляция сцены
  • Асинхронное создание экземпляров
  • Улучшения рабочих и отладочных инструментов ECS

Megacity on Mobile

A few developers from Nordeus took on the Megacity demo to show how DOTS and the Lightweight Render Pipeline (LWRP) can help seamlessly scale a PC project down to mobile platforms. The goal was to maintain the graphics complexity of the PC version but run it on mobile devices with a very fast frame rate.

To achieve this, they used LWRP which is coming out of preview in 2019.1. Their takeaway: “When you are working on a game that is supposed to stretch the limits of PCs, and then you decide to port it to mobile later, you usually have to rework large parts of it due to performance limitations of mobile platforms. DOTS enabled us to use the same exact code running gameplay logic and rendering on a PC and seamlessly scale it down to mobile platforms.”

Архитектура Megacity

Getting Started with the Megacity Demo

In this session, recorded at GDC 2019, Unity Evangelist Mike Geig will give you an introduction to the project and show how we leveraged Unity's "Performance by default" to create a massive game world full of complex objects and simulations.

Megacity на Unite LA: презентация и обзор

Йоаким Анте впервые рассказал о ECS на Unite LA 2018, представив результаты работы своей команды за последние шесть месяцев.

Megacity на Unite LA: разработка живого мира с малым бюджетом

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

Megacity на Unite LA: графовая архитектура звука в мире ECS

Узнайте, что представляет собой новый движок рендеринга звука, использующий систему задач C#. Докладчики расскажут о системе низкоуровневого рендеринга звука и рассмотрят технологию ECS, которая и позволяет реализовать масштабный звук в представленной демонстрации.

Megacity на Unite LA: масштабируемые LOD и системы отсечения

Майк Актон рассказывает, почему его команда использовала ECS для отрисовки демонстрации Megacity в режиме трансляции на Unite LA.

Megacity на Unite LA: сплайновые ИИ-агенты

Обзор системы симуляции дорожного движения, использующей вычислительные ядра и код, созданный компилятором Burst, а также процесса разработки сплайновых ИИ-агентов с помощью ECS.

Megacity на Unite LA: трансляция и сериализация

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

Megacity на Unite LA: эволюция ECS API

Прошлое, настоящее и будущее ECS. Ария Бончек из команды информационно-ориентированной архитектуры в Unity рассказывает о наших решениях в разработке мощного API. 

Megacity на Unite LA: использование Entity Debugger

Знакомство с функциями отладчика экземпляров и обсуждение его роли в будущих версиях Unity.

ECS разработана специально для огромных игровых окружений

Одна из наших главных задач в разработке Megacity — показать, насколько Entity Component System удобна для трансляции огромных массивов элементов сцены.

Например, Megacity содержит 4,5 млн объектов с Mesh Renderer, 5 000 динамических автомобилей и 200 000 уникальных зданий. Транспорт движется по сплайновым полосам проезжей части без столкновений. В сцене используется 100 000 уникальных источников звука, включая неоновые вывески, вентиляторы кондиционеров и машины, издающие уникальные звуки, и все это создает картину богатой, реалистичной звуковой сцены

Megacity уже доступен

Загрузите демонстрационный проект Megacity со всеми исходными файлами и ассетами. 

Megacity работает на Unity 2019.1.0 Beta 7.

Присоединяйтесь к обсуждению на форуме, будьте в курсе новостей и учитесь принципам работы с ECS.

We use cookies to ensure that we give you the best experience on our website. Click here for more information.