Баланс и реиграбельность, пожалуй, одни из главных моментов для PvP-шутера. Визуал тоже важен и для всего этого у нас есть целый пайплайн левел-дизайнера. Другое дело — жанры, где атмосфера окружения стоит на первом месте, а над уровнем работает один человек вместо целой команды. И воркфлоу такого «человека-оркестра» мне оказался очень интересен. Недавно наткнулся как раз на статью, где автор выполняет как раз такую роль и создает Sci-Fi локацию.
Под катом большой перевод всего процесса — от модульных ассетов и материалов на основе фотографий до освещение и характера сцены. И как тизер — вот что получилось в итоге:
Введение
Меня зовут Мэтт Олсон, я художник окружения из Orange County, California. Изучал изобразительное искусство, иллюстрацию и графический дизайн в университете штата Калифорния Лонг-Бич.
Моя карьера началась в 1997 году в роли концепт-художника небольшой компании, разрабатывающей научно-фантастическое MMORPG Atriarch. Большую часть времени я рисовал инопланетян и инопланетные пейзажи, но еще работал с Lightwave 3D. Это была отличная платформа для изучения моделирования, освещения и анимации. В 2001 году начал работать в Collective — небольшой независимой студии, базирующейся в Ньюпорт-Бич. Делал Wrath: Unleashed, Getting Up, Star Wars Episode III Revenge Of The Sith, The Da Vinci Code, Silent Hill: Homecoming, Front Mission Evolved и еще несколько неизданных проектов. За 9 лет в этой студии из художника окружения я стал ведущим художником окружения, а затем арт-директором.
Потом я ушел из менеджмента, чтобы снова вернуться к созданию арта — в Turtle Rock Studios. Там работал старшим художником над шутером EVOLVE и несколькими VR-проектами. А сейчас мы разрабатываем неанонсированный тайтл.
Sci-Fi проект Anastasios: начало
Sci-Fi — мой любимый жанр для работы над дизайном окружения. Мне нравится свобода при создании пространств, очертаний и форм. Вероятно, именно поэтому любимыми проектами всегда были EVOLVE и Star Wars. В Sci-Fi я захотел погрузиться после создания своего видения Дикого Запада для ArtStation Challenge. Там Дикий Запад смешался с научной фантастикой и стало понятно, что мне ближе из этого.
Обычно во время работы я включаю фильм. Недавно смотрел «Чужого», «Миссию „Серенити“» и 4-6 эпизоды «Звездных войн». «Миссия „Серенити“» — то, откуда изначально пришла идея сделать «обжитый» корабль. «Чужой» сильно повлиял на атмосферу с олдскульными технологиями. Мне нравится громоздкий старый тип электроники с тактильными переключателями, кнопками и зелеными ЭЛТ-мониторами.
Еще вдохновлялся старыми подводными лодками и морскими кораблями, в основном, из-за прекрасного инженерного хаоса вокруг (и чтобы избежать копирования стиля из фильмов). Хотелось, чтобы все поверхности были грубыми, поцарапанными, маслянистыми, грязными и неопрятными. Локация должна была выглядеть так, будто ей нужен хороший ремонт.
Хотел ограничиться типичным Sci-Fi коридором, но когда все было готово, решил развивать идею дальше. В итоге появился целый интерьер корабля. Правда он еще не закончен (хочу добавить больше деталей, которые указывали бы на присутствие людей).
Прототип уровня (Blockout)
Повторюсь, сначала планировалось создать небольшой участок коридора. Главная цель: сделать переполненное и хаотичное пространство, которое при этом имело бы ясно видимый проход для людей. Первый блокаут коридора был слишком широким, а я стремился сделать его таким же плотным, как на подводной лодке. Поэтому набросал гораздо более узкую версию, но после быстрого импорта в UE4, понял, что перестарался. Теперь он не позволял разместить камеру в любом месте для создания хороших скриншотов. Я замоделил коридор, чтобы определить минимальное и максимальное расстояния, а затем использовал их в качестве стандартов для остальной части корабля. Очевидно, что некоторые помещения стали больше, особенно два ангара и круглое ядро в середине корабля.
Потом сделал грубый блокаут всего коридора.
Когда вопрос с общим видом сцены (неважно, будет это концепт-арт или референс) закрыт, начинается создание набора текстур (он будет расти по мере необходимости).
Окружающая среда построена с использованием трим- и тайл-текстур (trim sheets и tileable texture). Первыми я смоделировал модульные стены, полы и потолки. Первоначально было три типа стен, в итоге их стало пять. Затем появился модульный набор труб и модульные дверные элементы (дверные рамы, люк, одиночные и двойные двери). Этого хватало, чтобы построить основу коридоров и комнат.
Далее стояла задача смоделировать все панели, машины, детали, источники света и вспомогательные элементы (рычаги, циферблаты и кривошипные колеса). Я сделал базовый набор этих вещей и наполнил ими коридор, чтобы выровнять пустоту и добавить жизнь в локацию.
Модульные ассеты
Когда дело доходит до модульных ассетов, я обязательно строю все на сетке, которая следует за метрическими измерениями UE4. В Maya устанавливаю единицы измерения в сантиметры, а затем делаю сетку с шагом 1 метр с делениями каждые полметра. Когда готовлю модель для экспорта, проверяю, что моя точка вращения установлена в точку на этой сетке. Это нужно, чтобы она как положено сошлась в редакторе. Также слежу за тем, чтобы мои модульные элементы заканчивались на сетке и сходились друг с другом.
Как только библиотека модульных частей будет готова, я смогу обновлять ее для разнообразия. Например, добавить кабельную систему UE4 для протягивания проводов и кабелей через все сцены, чтобы помочь с задуманным организованным хаосом. Для размещения проводов и кабелей я сделал «вилки» (plugs), которые мог ставить в любом месте локации. Система крута в том, что вы прикрепляете конец кабеля к предмету и устанавливаете его в любом месте — кабель протянется сам.
Несколько кастомных моделей были созданы специально для моста и ангара. Для моста, например, нужны сиденья и консоль. По сути они были сделаны так же, как и все остальное (с использованием trim sheets), но мне все равно пришлось придумать некоторые уникальные особенности.
Шаттл в ангаре тоже самостоятельный объект, который был закитбашен. Основной корпус шаттла — это специальная модель, изготовленная с использованием материала Blend, чтобы можно было добавить эффект изношенности по краям и углам.
Материалы
В проекте я не хотел использовать много ровных и глянцевых поверхностей. Хотелось, чтобы все материалы были грубыми, маслянистыми, шероховатыми и грязными. Но они должны были дополнять сцену, а не перегружать ее или «соперничать» друг с другом за внимание игрока. Освещение сцены может помочь в этом, но только если материалы поверхностей сочетаются друг с другом.
При создании материалов я люблю сканировать вещи из реальной жизни. В ней так много мелочей и деталей, которые к тому же бесплатны. Но так как для моего Sci-Fi проекта это сделать не так просто, я решил создавать материалы на основе фотографий: во-первых, они дают нужный внешний вид, а во-вторых, у меня есть несколько лет опыта работы с этим.
Метод похож на то, как вы создаете материал в Substance Designer, но делается это в Photoshop с использованием определенных слоев и фильтров. Я начал с типичного материала Sci-Fi стены, который использовался бы во всем проекте.
Я взял два изображения для создания первого материала: нержавеющая сталь для создания границы стены и старая дверь-рольставни для основной части стены. Потом почистил и убрал внешние косяки. Затем удалил информацию об освещении, кроме эмбиента — его добавил под металлический каркас вокруг границы. Наконец, настроил гистограмму, чтобы удалить все слишком темные и светлые значения. Еще немного уменьшил контраст.
Потом сделал карту нормалей. Шаг довольно простой, особенно с таким материалом стены. Создается простая карта высот с черно-белыми градиентами, которые соответствуют крупным фигурам в базовом цвете. Это — база для карты нормалей, которая будет управлять общей глубиной материала. Для создания тонкого слоя Bump я использую ненасыщенную версию базового цвета с агрессивно увеличенным контрастом. Появляется ощущение пластикового покрытия.
Сохраняю мелкие детали для карты шероховатости. Для генерации нормалей пригодится плагин XNormal в Photoshop. Я смешиваю слой Bump с генерируемым слоем высоты, удаляя синий канал и используя режим смешивания Hard Light. Так можно контролировать силу Bump, просто регулируя непрозрачность слоя.
Для карты шероховатости я обесцвечиваю базовый цвет и делаю необходимые изменения для получения бликов и неровностей.
Мой материал, настроенный для стандартного материала PBR, довольно прост в UE4. Есть одна вещь для сохранения количества карт при уменьшении памяти. Я объединяю карты (металлическую, шероховатости и AO) в одну структуру, используя каналы RGB. Шероховатость помещаем в зеленый канал, потому что это помогает со сжатием текстуры.
Trim Sheets и Сборка
Во время создания Sci-Fi окружения trim sheets незаменимы, особенно при китбашинге. Главное, для чего они нужны — это переходные зоны (например, где стена встречается с полом) или для сборки каркаса (чтобы прикрепить объект на другую поверхность). А также для создания балок, рам и труб, которые помогают выстраивать структуру среды. Для конкретно этой среды был сделан один trim sheet. Почти каждая модель использует его в той или иной форме.
Вместе с trim sheets я использую много atlas sheets. Они обычно состоят из элементов, непохожих на плитку, панели, консоли, листы металла и другие.
Я использую модули еще и для уменьшения монотонной работы во время создания сцены. Примерно как, когда вы постоянно копаетесь в одном и том же меню редактора или инструменте, и задаетесь вопросом: «Почему у меня для этого нет горячей клавиши?».
Мне нравится собирать сцену вручную по кусочкам и оживлять ее, но чрезмерные модульные части не позволяют мне делать это без большого количества слоев и сложное иерархии. Я пытаюсь подогнать зоны друг к другу и заставить их работать: иногда получается, иногда нет.
У меня даже есть несколько обсессивно-компульсивных признаков при моделировании. Например, делать плоскую поверхность «идеально» плоской или чтобы нечто цилиндрическое имело количество сторон кратным 4 (4, 8, 16, 20, 24, 36). Но при создании интерьера корабля я не беспокоился о его идеальном виде. Цель — чтобы он выглядел старым, обжитым, будто экипаж делает все возможное для поддержания его в рабочем состоянии.
Освещение
Чтобы придать атмосферу локации, хотелось сделать густой воздух со множеством частиц. Я выкрутил освещение достаточно ярко, чтобы объекты не терялись в темноте, но осталось ощущение, что лампочки можно протереть от пыли. Еще хотелось добавить цвета. Во многих Sci-Fi фильмах и играх за последние несколько лет, окружение все такое темное, коричневое или серое. Выглядит весьма однообразно. Мне очень нравится освещение в «Чужом» и «Чужих», но не хотел копировать их стиль полностью и старательно избегал темных или ярко белых поверхностей.
Я использовал «объемный» туман и освещение. В основном применял только статическое освещение. Стационарные источники света использовались, когда было нужно получить определенное объемное рассеяние: Point lights для создания свечения внутри или позади объекта и Spotlights для создания лучей.
Одна из самых больших проблем — это заставить «объемность» работать внутри корабля, не затрагивая звездное небо за его пределами. На Земле это не проблема, потому что там есть атмосфера, которую можно смешать с небесным куполом. Космос — другая история. Решение было простым, но мне пришлось пойти на компромисс с плотностью тумана — у него есть значение View Distance, которое дало плотную атмосферу.
Мне нравится использовать подсветку для получения обводки на мидграунд-объектах. Она добавляет больше глубины, особенно в узких пространствах. А также помогает сложным объектам не затеряться в фоне.
Я использовал каждый тип света, кроме направленного, потому что делал только интерьеры. Больше всего расставлял Point lights, так как они заполняют пространство большим количеством света, и не нужно думать, в каком направлении они указывают (они спрятаны за мидграунд-объекты для создания подсветки). Rect Lights использованы почти на всех светильниках, потому что они естественнее распространяют свет от источника. Spotlights использовались для света в определенном направлении (например, при прохождении через вентиляцию). А чтобы не пересветить сцену, нигде не использовалось значение выше единицы.
Все начинается с базовой настройки света, который естественным образом возникает в искусственном пространстве. Добавляю несколько воздушных огней, которые правильно заполняют пространство светом, и делаю несколько итераций, пока не буду доволен результатом. Затем расставляю огни сзади и посередине, чтобы создать параллакс и разделение.
Потом размещаю несколько объемных огней для большей атмосферы. Хотелось, чтобы свет исходил изнутри машины. Последним этапом добавляются акценты от всех небольших источников света, включая консоли и экраны компьютеров. Как только я доволен сценой в целом, то перебираю значения и цвета для желаемого вида.
Главное у меня при создании атмосферы — это туман и свечение. А также частицы для эффекта зависшей пыли в воздухе, чтобы он выглядит более естественным.
Добавление характера сцене
В видеоиграх окружающая среда должна иметь столько же характера, сколько сами персонажи. Это помогает повествованию без дополнительных слов. Мне нравится добавлять персональные отсылки, как в Silent Hill: Homecoming. Я попросил каждого человека из команды разработки написать короткое сообщение или имя, которое они бы написали на стене тюремной камеры. Эти фразы стали основой для atlas textures, которые используется на уровне с тюрьмой.
У меня было несколько целей при создании Sci-Fi локации: грубые и потертые материалы, неровные и поверхности без блестящих элементов, сложные механизмы, никаких сенсорных экранов, никаких голограмм, физические кнопки и рычаги, много проводов и труб, компьютерные технологии 80-х, асимметрия, небольшие замкнутые пространства, как на подводной лодке или военном корабле, и упорядоченный хаос.
Композиция — главный фактор для придания сцене характера. Во время работы над собственным проектом мне не мешают условности, которые есть у геймдев-студий. Поэтому у меня полная свобода при создании композиций и набросков. Каждая зона скомпонована так, чтобы получить хороший вид из любого угла или дверного проема. В том числе, и при рассмотрении локаций в отдельности друг от друга. Каждое пространство имеет собственный характер, поэтому вы не поймете, что все построено с использованием одного и того же набора ассетов.
Хотелось, чтобы игроки больше исследовали корабль, потому что каждое помещение там уникально.
Название корабля произошло от подражания кораблям Ностромо и Сулако из фильмов «Чужой» и «Чужие». Я нашел греческое имя Anastasios (Воскрешение).
Вроде подходит.
Автор: azazelis