Доминик Луска - художник по 3D-графике, работающий в SCS Software более 4 лет и работавший практически над всеми выпущенными в настоящее время расширениями карт. Его описание работы состоит из записи анимации захвата движения, моделирования, ретопологии модели высокого разрешения, текстурирования и импорта модели в игру. Работает вместе с Map Designer и Animator для создания пешеходов, рабочих и других персонажей, которые можно увидеть в наших играх-симуляторах грузовиков.
Если вас интересует, как мы создаем анимацию людей и животных, которую можно найти в Euro / American Truck Simulator, вы попали по адресу. Прежде всего, я должен отметить, что пешеходы и другие персонажи не играют важной роли в жизне симулятора грузовиков, а всего лишь дополняет игру. Тем не менее, они по-прежнему играют определенную роль в наших играх, поэтому мы должны убедиться, что они получают соответствующий уход. Сейчас у нас более 30 моделей персонажей в наших играх. Это все персонажи, которых вы можете увидеть в нашем мире. Например, вы можете видеть сотрудников службы безопасности, сотрудников полиции и таможни, людей, фотографирующих негабаритные грузы на свои телефоны и многое другое. Чтобы создать мир, полный жизни, мы должны различать друг друга по их действиям, анимации и внешнему виду. Конечно, некоторые из них универсальны, поэтому мы используем их между проектами, чтобы сэкономить время и работу. В дополнение к универсальным, у нас есть специальные символы для более конкретного проекта, страны или города. Для каждого персонажа есть четыре текстуры, две для одежды и две для тела.
Существуют также дополнительные объекты (или, как мы их называем, «реквизиты»), которые наши персонажи могут содержать или использовать, эти элементы включены в окончательные файлы анимации. Объем данных для этих моделей и анимаций очень важен, и чтобы мы не путались между структурами и моделями, мы используем абсолютную классику - Total Commander. Каждый файл имеет название на английском языке, чтобы сделать его понятным для всех.
Когда мы импортируем готовые данные в игру, мы должны сохранить экспортированную модель или анимацию, а также исходный файл для этих анимаций и модели; в случае, если нам нужно внести изменения в будущем. У нас есть целая структура папок специально для анимации, моделей, текстур и каркас. Однако организация данных не заканчивается файлами, папками и их именами. Нельзя забывать о безупречном управлении каждой моделью в файлах определений, которое является почти таким же важным, как и ранее упоминавшаяся структура папок. Чтобы дать вам некоторые основные сведения о файлах, каждая модель должна иметь правильный уникальный номер обозначения и краткое имя для конструкторов карт.
Сначала мы создаем модель на основе эталонного файла. Эти ссылки исходят от наших исследователей, специального отдела нашей компании, который отвечает за исследование данных, изображений и информации; просто все, что нужно остальной части компании, экономя много времени для создателей моделей, аниматоров и дизайнеров карт. Эта первая модель называется «LOD 0». Эта аббревиатура означает «Уровень детализации», и эта система используется для чередования моделей с более низким и высоким разрешением в соответствии с диапазоном точки видимость. У нас есть 4 LOD в нашей игре персонажей; где последний из них служит более чем на 100 метров. LOD также должен быть тщательно проверен на предмет резких изменений, например, мы не хотим, чтобы ноги или голова исчезали в пределах 10 метров от ее точки видимости. Некоторые анимированные модели также имеют «модель коллизия», которая не позволяет игрокам проходить через персонажа. И почему мы не позволяем людям пересекать здания и персонажей? Потому что наши игры получили возраст 3 года, который мы хотели бы сохранить. Благодаря этому каждый может играть в наши игры, даже дети.
Когда мы будем удовлетворены моделью и ее LOD, мы перейдем к UV-отображению, или, точнее, для измерения 3D-модели на 2D-плоскости, чтобы мы могли создать текстуру. Этот процесс также требует времени, главным образом потому, что наиболее важные части модели занимают больше места на текстуре. Это означает, что УФ-датчик должен быть создан максимально эффективно. Например, мы отражаем небольшие части модели, такие как шляпы, шлемы и другие предметы, что экономит ценное пространство на следующем графике для этой модели. Далее мы создаем сюжет для этой модели на основе полученных нами ссылок. Каждый персонаж получает Рельефное текстурирование. Карта нормалей - это изображение, которое имитирует мягкую геометрическую структуру, которая используется для создания иллюзии более высокой детализации в модели с низким разрешением. Карты нормалей используются для сгибов, пуговиц, вышивок, карманов и подобных деталей.
После того, как мы закончили со структурами и моделью, начинается более интересный и уже несколько волнительный процесс - запись анимации персонажей. Чтобы сэкономить время и энергию, НЕ делая этого самым затратным по времени и затратным способом, мы используем импровизированный захват движения (MoCap), который мы используем для записи грубых основ анимации. Я говорю «грубо», потому что одним из недостатков этого типа мокапа является его точность на важных частях человеческого тела, таких как ключицы или запястья. Мы не используем полный mocap, но более дешевый вариант, основанный на двух сенсорах Kinect (2-го поколения). У этого метода анимации есть преимущество: вам не нужна специальная одежда или маркеры, поэтому любой может выйти на площадку и начать запись. Благодаря этой технологии мы можем привести в компанию кого угодно и поставить перед камерами, чтобы оживить модели персонажей.
Перед началом записи анимации наш мокап должен быть подготовлен и откалиброван. Требуется краткая запись теста и калибровки. Это может занять до двух часов, потому что могут быть проблемы на разных уровнях, например, у станций могут быть проблемы со связью друг с другом, операционная система может обновиться в нужное время, когда мы захотим ее использовать, и могут появиться многие другие проблемы. После успешного сеанса калибровки и записи нам необходимо «вручную» настроить эти анимации, записанные в разных программах. В этом случае мы обычно регулируем шум и тремор, движения тела по неправильным осям или движения запястья, которые не были обнаружены нашим мокапом. Чтобы понять процесс записи в деталях, мы должны создать отдельную статью, поэтому давайте перейдем к финальной стадии, импортируя данные в нашу игру.
Итак, наша завершенная модель с анимацией готова для включения в игру. Чтобы редактор «увидел» нашу модель, нам нужно правильно определить ее в текстовом файле (файле определения). В этом файле как анимированные, так и неанимированные модели имеют ссылку на модель, на ее LOD и, возможно, на анимацию с моделью коллизии.
Когда мы правильно определим модель, мы наконец сможем увидеть ее в редакторе. Редактор - это наш инструмент, в котором дизайнеры карт строят всю карту, а наши графические дизайнеры проверяют свои модели. Если что-то не так, мы адаптируем модель или анимацию в 3D-программах, таких как Maya или Blender, и экспортируем их снова. Поскольку определение уже присутствует, мы можем просто обновить модель в редакторе, чтобы сразу увидеть изменения. Это похоже на обновление веб-сайта в веб-браузере: шаблоны и анимация создаются в Autodesk Maya, а текстуры - в Adobe Photoshop. Чтобы создать карту нормалей, нам нужно импортировать модель в программное обеспечение Marmoset Toolbag, которое используется для «приготовления» деталей от модели с высоким разрешением до модели с низким разрешением. Весь процесс сложнее, чем то, что я написал здесь, но тогда этого блога будет в два раза больше (а может, даже больше).
Я надеюсь, что объяснил это достаточно хорошо, чтобы дать вам представление о нашей работе. А если вам понравилась статья и вы хотите узнать больше, сообщите нам об этом в комментариях и не стесняйтесь сказать, что именно вас интересует.