Дневник разработки Lost Story: The Last Days of Earth - фотограмметрия

Дневник разработки Lost Story: Фотограмметрия (Часть 1)

Команда разработчиков долгожданной игры Lost Story: The Last Days of Earth (Rock Path Collective) подготовила новую порцию увлекательного повествования о подробностях процесса создания игры. Поскольку мы имеем дело с экспериментаторами, то банальностей вы не дождетесь — только передовой хардкор — фотограмметрия, которая в настоящее время используется редко, но очень перспективна в разработке игр вообще и в создании контента для VR в частности, но при этом вполне доступна любому желающему средней упертости. Вдохновлены? Добро пожаловать под кат.

Дорогие друзья и фанаты вселенной Half-Life!

Зима, наконец, отступает и сдаёт свои позиции весне, и мы ради приветствовать её новым дневником разработки! Изначально тема этого дневника должна была стать лишь небольшой частью Dev.Log №3, подготовленного для конкурса Indie DB — 2015 Indie of the Year Awards, но жизнь вносит свои коррективы и мы не успели осветить её в прошлом дневнике. Но, как говорится, всё что ни делается — всё к лучшему! У нас появилось больше времени и в итоге небольшая заметка переросла в полноценный дневник разработки, да такой большой, что нам пришлось разделить его на две части!

Касательно темы дневника, как вы уже возможно знаете, некоторое время назад мы намекнули на неё, загадав нашим подписчикам загадку: «Что общего между пасмурным днём и пятнадцатисантиметровым саморезом?». К великому удивлению, мы получили просто массу всевозможных ответов: глупых, странных, смешных и даже вполне серьезных. 🙂 К сожалению, никто так и не смог дать полностью правильный ответ, хотя несколько человек были очень близки.

Ну что ж, барабанная дробь … Что общего между пасмурным днём и пятнадцатисантиметровым саморезом? Правильный ответ — и то и другое позволяет получить мягкий рассеянный свет, так необходимый для получения качественных результатов в процессе фотограмметрии. И как вы уже догадались, фотограмметрия, а точнее процесс создания игрового контента на её основе, и есть тема сегодняшнего дневника. В первой части мы расскажем вам о создании моделей, вторую же часть, которая будет чуть позже, посвятим материалам.

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

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

Почему фотограмметрии?

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

Дневник разработки Lost Story: The Last Days of Earth - фотограмметрия

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

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

Итак, мы стали перебирать варианты. Создание обычных низкополигональных моделей и использование фототекстур — быстро, но результат очень низкого качества, особенно на природных объектах. Создание вручную высокополигональной модели для каждого пня, камня и ствола дерева — качественно, но неимоверно долго для небольшой команды — это десятки моделей, которые предстоит кропотливо сделать вручную.

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

Съёмки на натуре

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

Но вот чего действительно стоит избегать при съёмке для фотограмметрии, так это сильных вариаций ярких и тёмных участков на поверхности предмета. Такая вариация получается при ясной и солнечной погоде и чётких тенях, и в конечном итоге приводит к тому, что все тени и блики окажутся на текстуре в игре, и предмет практически невозможно будет вписать в сцену с другим освещением.


Дневник разработки Lost Story: The Last Days of Earth - фотограмметрия

В целом, съёмки на натуре не вызывают особых трудностей, и один человек за один рабочий день может качественно отснять 4-5 объектов, а если работать в паре то можно и больше 10, что довольно внушительно. Кроме зависимости от погоды обнаружился лишь ещё один неприятный момент — чтобы найти интересные объекты иногда забираешься в самую чащу леса. Там, как правило, невозможно работать даже с моноподом и приходится проявлять чудеса акробатики и растяжки.

После нескольких наших вылазок мы теперь точно знаем как именно тренировался знаменитый актёр боевиков 90x на фото выше 😀

Съёмки в «студии»

О съёмках в «студии» мы задумались, когда стало понятно, что камни, снятые на натуре, не слишком удобно использовать для создания уровней. Дело в том, что большинство валунов глубоко сидят в земле и в финальной модели одна из шести сторон у них будет отсутствовать полностью. Из-за этого с такими валунами сложно работать при создании локации. «Дыра» в основании такого камня ограничивает углы поворота, что в свою очередь не даёт использовать копии моделей близко друг к другу — очень заметно что это одна и та же модель. В силу всех этих причин было решено собрать несколько небольших камней с интересной фактурой и отснять их в «студии».

Почему я пишу «студия» в кавычках? Да потому, что съёмки проводились в домашних условиях, где мы создали импровизированную «студию» из подручных материалов! Для качественной съёмки нужно много света, которого в обычной квартире конечно же не хватает, что ж пришлось отправиться за покупками. Навестив пару фотомагазинов и пустив скупую мужскую слезу на ценники профессионального осветительного оборудования, мы не пали духом и решили действовать иначе.


Дневник разработки Lost Story: The Last Days of Earth - фотограмметрия

Спустя пару дней и несколько походов по строительным магазинам «студия» была готова. При помощи наших очумелых ручек: шесть белых простыней превратились в шатёр Аладдина — он же софтбокс для рассеивания света; к мощным уличным светильникам добавились вилки для розетки, удобные выключатели и подставки; из трёх металлических ножек, небольшой столешницы и ткани получилась удобная подставка.

Ну а финальным штрихом стал самодельный постамент со «знаменитыми» пятнадцатисантиметровыми саморезами, который позволяет получать равномерное рассеянное освещение, снимать объект со всех сторон и, как следствие, получать полностью замкнутую модель без дырок.

Дневник разработки Lost Story: The Last Days of Earth - фотограмметрия

Съёмки в «студии» идут медленнее, т.к. света всё равно намного меньше чем на улице и приходится использовать штатив. Тем не менее за один рабочий день можно отснять 3-4 объекта. Основной трудностью является монотонность процесса, но мы таки справились и отсняли десяток камней, а также несколько других предметов.

Обработка фото

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

В результате обработки мы получили модели с полигонажем от 9 до 13 млн треугольников и альбедо картой размером 16 384 пикселей для каждой модели (представлены ниже).


Дневник разработки Lost Story: The Last Days of Earth - фотограмметрия

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

Результаты

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

Стоит, правда, отметить, что в силу того, что природные объекты обладают хаотичной поверхностью, ретопология производилась почти полностью в автоматическом режиме. Ещё одно небольшое отличие: после создания UV развертки, с высокополигональной модели помимо обычной информации (рельефа, затенения, изгиба поверхности и проч.) на текстурные координаты низкополигональной модели была перенесена и альбедо карта.


Дневник разработки Lost Story: The Last Days of Earth - фотограмметрия

Финальным этапом работы стала подготовка материалов и моделей для движка и настройка цвета альбедо карты, чтобы все модели лучше подходили друг к другу и вписывались в окружение. Но это ещё не всё! В финале мы провели ещё один небольшой эксперимент.

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

«Но мох же должен быть пушистым!» — скажете вы. Верно! Вот тут то мы и вспомнили про метод времён Play Station 2, а именно про многослойную геометрию с альфа каналом. Результат нас вполне устроил: выглядит отлично, при этом ресурсов почти не требует! Вот так, работая над фотограмметрией, у нас появился метод для создания пушистых материалов, будь то мох, ворс или даже шерсть.

Финальные низкополигональные модели вы можете видеть выше и ниже. Их рендер максимально приближен к тому, как они будут выглядеть в игре. Скриншоты же из игры с финальными моделями ждут вас во второй части этого дневника, которая будет чуть позже.


Дневник разработки Lost Story: The Last Days of Earth - фотограмметрия

В заключении хотелось бы отметить, что по нашим подсчётам на получение одной финальной модели из фотографий у нас ушло в среднем 2-3 дня (не учитывая время на съёмку). При этом занимался этим только один 3D художник, и это впечатляет, учитывая финальное качество.

На сегодня всё. Ожидайте вторую часть дневника и не забывайте делиться своим мнение в комментариях.

Ваши ежи в затемнённых очках из Rock Path Collective.


1 оценка, среднее: 5,00 из 51 оценка, среднее: 5,00 из 51 оценка, среднее: 5,00 из 51 оценка, среднее: 5,00 из 51 оценка, среднее: 5,00 из 5 (Голосов: 1, оценка: 5,00 из 5)
Чтобы проголосовать, необходимо зарегистрироваться.
РейтингЗагрузка...

Комментарии:

Главная Форумы Дневник разработки Lost Story: Фотограмметрия (Часть 1)

В этой теме 0 ответов, 1 участник, последнее обновление Картинка профиля Natusik Natusik 8 мес., 3 нед. назад.

Для ответа в этой теме необходимо авторизоваться.