За кулисами Epic Games: игровой движок открытого мира Часть 1

Крутые ребята из Epic Games хотели показать, насколько далеко они зашли в разработке своего игрового движка Unreal Engine, и создали мини-фильм в качестве презентации. Весь процесс и самое вкусное о его создании здесь!

В 2015 году на конференции разработчиков игр (GDC-Game Developers Conference) американская компания Epic Games представила демо версию открытого мира в реальном времени. «Мальчик и его воздушный змей (с англ. — A Boy and his Kite) — смело заявил о том, насколько мощным стал их игровой движок Unreal Engine и как его можно использовать за пределами привычно игровой среды.

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

А вот Unreal Engine — игровой движок, разрабатываемый
и поддерживаемый компанией Epic Games. Первая игра, созданная на этом
движке — Unreal — появилась в 1998 году. С тех пор различные версии
движка были использованы в более чем в сотне игр и других проектов.

Тим Суини (Tim Sweeney) основатель и главный исполнительный директор Epic Games описывает игровой движок его компании как никогда близкий к реальному геймеру, подтверждая это заявлением, что они даже разработали свои собственные кисти. Epic Games сейчас в ударе, они нанимают самые яркие таланты в этой отрасли, благодаря чему цена на продукт выросла в 25 раз только за прошлый год.

За пределами традиционного рынка разработчики также нашли применение своего движка среди режиссеров и визуализаторов. Это расширение от игры до архитектурного «прохождения», повествования и других форм общения, оказывается переломным моментом. В наше время движки стали настолько мощными — они демонстрируют физический свет, трассировку лучей, SSS (прим. Пер. — Subsurface scattering — программная техника (методика) в трёхмерной компьютерной графике, описывающая распространение света через полупрозрачные тела) — что их использование сулит дальнейшее расширение.

Для демонстрации применения усовершенствованного движка команда Epic создала небольшую, но очень кинематографичную и естественную историю с открытым миром в стилистике Pixar. Они использовали роботов и съемки от первого лица прекрасного шотландского пейзажа. Стоит также отметить, что производство «мини-фильма» было начато за 9 недель до конференции, где он был впервые представлен.

Режиссировать этот фильм было поручено Гевину Морану (Gavin Moran), который начал свою карьеру в качестве традиционного 2D-аниматора после чего перешел к компьютерной графике в Disney, DreamWorks and Sony Pictures Imageworks. С момента начала карьеры в Epic 5 лет назад он работал над всеми демо версиями, такими как Samaritan Demo (2011, Unreal Engine 3), Elemental (2012, Unreal 4) and Infiltrator (2013, Unreal 4). Эти демо-версии были впечатляющими сами по себе, они оставались урбанистическими, темными, в то время, как «Мальчик и его воздушный змей» нет. Уход от обычно готических демо-версий был преднамеренным.

Даниель Фогель (Daniel Vogel) директор по инженерингу Epic Games, заявил в самом начале, что окружение для «Мальчика» должно составлять не менее 100 квадратных миль ландшафта. Финальная версия открытого мира и в самом деле огромна. Она наполненная полуфункциональными высокогорьями, населенными птицами и оленями, а в версии фильма — мальчиком и его воздушным змеем. Когда мир был запущен на конференции разработчиков игр, слушатели могли летать или ходить вокруг по миру в Unreal, а затем и загрузить как демо-версию. Зрители могли передвигаться в режиме дрона или ходьбы.

«Когда Ким Либрери (исполнительный продюсер проекта и VFX- супервайзер) подошел к нам» -рассказывает Фогель — «он хотел что-то, что бы продемонстрировало эту огромную окружающую среду настолько хорошо, насколько это возможно. Он хотел создать историю, и воздушный змей резонировал с большим количеством людей». Либрери пошутил, что возможно никто не слышал, что доска Тима Суини в их главном офисе окружена воздушными змеями. Воздушных змеев вдвое больше, чем жалюзи в его офисе Epic Gams.

прим. Пер. — VFX — спецэффекты. Супервайзер — ответственный за производительность труда и другие действия небольшой группы сотрудников.

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

Создание ассетов

(прим. пер. о том что такое ассеты и в чем их создавать — мы уже рассказывали в этой статье)

Для создания ассетов план был лететь в Шотландию и тематизировать мир, как на острове Скай (Skye), но когда команда поговорила с их коллегами из Великобритании, Epic отметили, что в начале года Шотландия мрачная, очень холодная и даже очень коричневая — не соответствующая миру в представлениях режиссера. Благодаря Google Earth команда отметила, что остров Скай идеально подошел бы, если бы зима была не в самом разгаре. Либрери отметил: «У нас есть офис Epic в Сандерленд (Sunderland), Великобритания, недалеко от Шотландии и они сказали: «Эй американцы, здесь просто морозилка! Здесь грязно и нет листьев на деревьях!»

Плановый вид, камни, мох, деревья и открытые поля. К счастью во время этого проекта команда Epic также работала над VR Смауга (прим. Пер. имеется ввиду дракон Смауг из вселенной Хоббита. VR — virtual reality — Виртуальная реальность) совместно с Weta Digital, которые обратили их внимание на Новую Зеландию — как возможное место съемок. В отличие от Шотландии, где дневной свет составлял 5 часов, в Новой Зеландии было лето с 12-тью часами света и меньшими осадками! Таким образом основная съемка была проделана командой из двух человек в Новой Зеландии, плюс дополнительная съемка от офиса Epic Великобритании на случай хорошей погоды. В итоге история воздушного змея происходит из страны, прозванной ‘Scozeland’ (прим. Пер. игра слов Scotland + New Zealand). Франсуа Антуан (François Antoine), который взял на себя роль супервайзера ассетов в проекте, возглавлял не только разведку локации и логистику поездки, но и весь пайплайн ассетов.

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

реконструкция фотограмметрии

Захват был разделен между съемкой референсов и фотограмметрической съемкой. Позже были сделаны снимки с помощью кругового поляризатора с такой большой глубиной резкости, насколько это возможно и снимки с цветовым шаблоном colorchecker, а так же снимки 18% серых и хромовых шаров. Также съемки ассетов были сделаны в пасмурную погоду, чтобы сузить диапазон между светлыми и темными областями и минимизировать блики. Референсы были повторно сфотографированы с colorchecker, но на этот раз на фоне голубого экрана. С помощью изоляции объекта он способствует хорошим сжатию и последующей распаковке файла, а референс цвета позволил нормализовать цветовое пространство и мог бы также позволить скорректировать, выровнять и сочетать все элементы, отснятые за неделю разведки. Для последующего использования были отсняты light probes в формате 360 HDR(High Dynamic Range). В процессе были преимущественно использованы три камеры Canon 5D Mk III с 8 мм линзами Sigma, 24–70 мм L линзами и RoundShot VR Drive для панорамы.

прим. пер. Поляризатор — светофильтр, предназначенный для устранения нежелательных эффектов (блики, отражения), уменьшения яркости, но с повышением насыщенности
ColorChecker — цветовая таблица, инструмент для цветокоррекции при съемке цифровой фотокамерой. Используется в тех случаях, когда нужно скорректировать входящее изображение, чтобы его численные показатели соответствовали некому референсу, образцу, эталонные цвета которого заведомо известны. Таблицы состоит из цветных печатей, запечатанных специальными красителями, цвета которых колориметрически выверены и стандартизированы.

Это привело к большому количеству фотографий и прекрасных ассетов. На самом деле, только в Новой Зеландии команда из двух человек отсняла 28 517 снимков и 248 ассетов — больше терабайта данных. Команда собрала столько данных! Но только 50 ассетов были использованы в сюжетной среде о воздушном змее. Команда стремится продолжать работу и обрабатывает остальную часть информации для использования в будущем. Фотограмметрическая реконструкция была выполнена десятью специалистами из трех офисов Epic games в США, Великобритании и Польше. Файлы Canon RAW (прим. Пер. — RAW — необработанный файл, сырая фотография) сильно сжаты, но если их конвертировать в TIFF-формат — они становятся значительно больше — таким образом размер файла мог вырасти от 7 Гб до 50 Гб. Работая над этими в разных уголках мира, команда была вынуждена передавать очень большой объем информации по сети — поэтому они создали свой собственный инструмент «GDC Photo Ripper» — быстрая многопоточная система копирования файлов, а так же линейный конвертер файлов из CR2 в 16bit TIFF, который печатает с профилем sRGB отображения тона(гаммы) для формирования благоприятной картинки для художника (сырые линейные картинки пространства частенько могут находиться в диапазоне значений, которые делают их неинтуитивными для работы).

Команда использовала Agisoft Photoscan для реконструкции (прим. Пер. — Agisoft PhotoScan также известный как просто PhotoScan — профессиональный инструмент для фотограмметрического пайплайна. Это автономный программный продукт, который осуществляет фотограмметрическую обработку фотографий и генерирует 3D данные, которые будут использованы в GIS-приложениях, документации культурного наследия, а также в производстве визуальных эффектов). Многополигональные объекты имели 10–20 миллионов полигонов с 16к текстур (5700 пикселей по ширине). Но конечно же ассет будет иметь «запечённый» свет (оклюжен и естественные тени). Чтобы переместить информацию об освещении из ассетов, Антуан создал полуавтоматизированный процесс который будет перегенерировать условия освещения во время съемки каждого ассета с помощью захвата HDR и использовать эту информацию, чтобы создать «удовлетворительный» переход. На выходе получается рассеянная альбето текстура (прим.пер. — альбедо — характеристика диффузной отражательной способности поверхности).

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

от 7 до 20 миллионов полигонов, 16к текстур

Затем команда создала карту неровностей и карту отражений, которые необходимы для физически основанного на освещении рендера в Unreal Engine 4. После завершения команда имела высокополигональный, но в таком случае слишком сложный для использования игр ассет. Чтобы создать низкополигональную версию использовали три уровня детализации (LOV — levels of detail) с очисткой текстуры и укупоркой модели. В будущем команда стремится автоматизировать и эффективно скрыть этот шаг, так что художник будет просто загружать высокополигональный ассет и использовать его — любая LOD-работа необходима при управлении игровым движком. Но сейчас это по-прежнему включает в себя ручную работу.

цифровой ассет в тёрнтейблизме

 

Так как Unreal 4 имеет основанный на blueprints script движок, команда создала систему тёрнтейблизма (прим. Пер. — Turntablism -Тёрнтейблизм дословно «столоверчение»- музыкальный жанр, разновидность диджеинга и часть хип-хоп культуры, подразумевающий создание музыкальных произведений с помощью виниловых или электронных проигрывателей («вертушек»)), которая позволяет рассматривать ассет в любом формате и при любом освещении, показывая все возможные «виды»(нормальный, в тени и т. д.). В целом команда из 11 человек «работали как сумасшедшие в течение полутора месяцев».

Продолжение следует…