Во-первых, вы можете скачать демо-проект в exe-файле.
Для вашего удобства мы разделили все ассеты, инструменты и шейдеры на два пакета: The Blacksmith – Characters (Персонажи) и The Blacksmith – Environments (Окружение).
Ниже представлена более подробная информация о каждом пакете, а также доводы в пользу выбора той или иной технологии. Мы хотим, чтобы этот проект не только продемонстрировал возможности Unity 5, но и принес вам непосредственную практическую пользу.
Опережая вопрос, который мы часто слышим после выпуска демо-материалов, ответим сразу: вы можете абсолютно свободно использовать эти ресурсы, даже в коммерческих проектах. При этом положения стандартной лицензии Asset Store остаются в силе. Мы будем рады, если этот релиз пригодится вам и поспособствует успеху вашего проекта.
EXE-ФАЙЛ
Управлять воспроизведением ролика можно с помощью простого интерфейса:
• Для перемотки вперед/назад используйте слайдер.
• Чтобы остановить или возобновить воспроизведение ролика, нажмите кнопку Play/Pause или клацните мышкой за пределами UI.
• Чтобы осмотреться, слегка изменив угол обзора, нажмите на паузу и перемещайте курсор.
• Чтобы выключить аудио, нажмите кнопку Mute.
Вы можете выбрать одну из предустановленных настроек качества:
• Низкое – рекомендуется для слабых устройств.
• Среднее – рекомендуется для высокопроизводительных ноутбуков и настольных ПК среднего класса. На ноутбуке с процессором Quad Core i7 (2,5 ГГц) и видеокартой GeForce GT 750M ролик воспроизводится в разрешении 720p при 30fps.
• Высокое – рекомендуется для большинства настольных ПК. На компьютере с процессором Core i7 4770 и видеокартой GeForce GTX 760 ролик воспроизводится в разрешении 1080p при 30fps.
• Очень высокое – рекомендуется для ПК с видеокартой GTX 760 и выше.
В зависимости от платформы, загрузка проекта может занять более 30 секунд.
ПАКЕТ THE BLACKSMITH – CHARACTERS
В состав этого пакета входят:
• модель кузнеца;
• модель антагониста;
• шейдер волос;
• карты морщин;
• уникальные тени персонажей;
• планарные отражения.
Скачать пакет The Blacksmith – Characters можно здесь.
Кузнец и антагонист
Модели персонажей в проекте представлены отдельно.
Мы переделали скин антагониста, который использовали в ролике, на более универсальный. Теперь его можно смело добавить в любое окружение и начать экспериментировать. Но учтите, что для хорошей анимации над ним все равно придется поработать. В качестве примера, мы добавили в проект две анимации: idle (бездействие) и walk (ходьба).
В этом пакете вы также найдете главного персонажа – кузнеца. Его скин намного сложнее, чем у антагониста, поэтому мы оставили все как есть, чтобы не тратить время попусту. Напоминаем: вы можете абсолютно свободно использовать эту оригинальную 3D-модель в ваших проектах.
Несмотря на то, что мы использовали некоторые текстуры в меньшем разрешении (2K), в пакете присутствуют оригинальные полноразмерные 4K-текстуры для обоих персонажей.
Авторы моделей и текстур для персонажей – Йонас Торнквист и Сергей Самуйлов.
Рендеринг волос
Чтобы волосы выглядели реалистично, нам нужно было характерное анизотропное освещение, поэтому для волос мы решили сделать отдельный шейдер. Кроме того, мы добавили в него компонент, рассчитывающий значение ambient occlusion отдельно для волос, и настроили многопроходный рендеринг во избежание ошибок сортировки перекрывающихся прозрачных полигонов.
Шейдер волос и сопутствующий образец сцены можно скачать на Asset Store. Детальная информация о его использовании и настройке содержится в readme-файле.
Карты морщин
Чтобы сделать мимику антагониста более реалистичной, мы добавили в проект карты морщин на основе блендшейпов. Наш уникальный компонент определяет блендшейпы с наибольшим влиянием и соответствующим образом компонует карты нормалей и затенений на стадии пререндера. Затем полученные данные импортируются в стандартный шейдер, заменяя карты нормалей и затенений, назначенные в материале.
Отдельный пакет с картами морщин можно скачать на Asset Store, а более подробную информацию можно найти здесь.
Уникальные тени персонажей
Мы стремились к тому, чтобы во всех шотах с крупным планом у персонажей были мягкие тени в высоком разрешении. Но при этом не должно было пострадать качество теней окружения. Чтобы решить эту проблему, мы добавили в проект возможность настройки уникальной карты теней для группы объектов.
Пакет с тенями персонажей также можно скачать на Asset Store, а более подробную информацию можно найти здесь.
Планарные отражения
На первый взгляд, планарные отражения в ролике The Blacksmith ничем не отличаются от обычных отражений на поверхности воды. Но все не так просто: после рендеринга отраженные изображения сворачиваются на всех mip-уровнях отражающей текстуры. За счет свертки, чем ближе к отражающей поверхности, тем четче становится изображение. Таким образом, мы создаем эффект трассировки лучей. Полученные уникальные текстуры заменяют кубические текстуры отражений в стандартном шейдере. При этом гладкость материала обуславливает выборку mip-уровней. В итоге, путем переключения по ключевому слову соответствующего параметра, модифицированный стандартный шейдер отбирает отражения из динамических текстур вместо кубических.
ПАКЕТ THE BLACKSMITH – ENVIRONMENTS
В состав этого пакета входят:
• кузница;
• окружение;
• атмосферное рассеяние;
• инструмент PaintJob (прорисовка растительности на любой поверхности);
• система растительности;
• шейдер MaskyMix;
• модифицированный стандартный шейдер;
• tonemapping.
Для переключения между видом от первого лица и анимированной камерой нажмите клавишу C. Переключаться между режимами освещения можно с помощью клавиши V.
Скачать пакет The Blacksmith – Environments можно здесь (обратите внимание: он довольно большой).
Кузница
Вот так выглядит интерьер кузницы:
Игровой вид кузницы из пакета The Blacksmith – Environments
Окружение
Мы решили немного преобразовать оригинальное окружение из ролика, чтобы его было удобнее использовать в играх. Детальная настройка потребует дополнительного времени, но для вас это отличная возможность попрактиковаться. Вот так выглядит версия окружения, доступная для скачивания:
Разница в том, что для нашего ролика мы компоновали окружение в зависимости от расположения камер. Если вам интересно, вот так выглядит окружение в окне Scene View оригинального проекта:
Вид сцены в окне Scene View оригинального проекта The Blacksmith
Некоторые ассеты не были использованы в новой версии окружения, но мы все равно добавили их в проект.
Автор сцены окружения и большинства ресурсов, представленных в этом пакете – Пламен Тамнев (Plamen ‘Paco’ Tamnev).
Атмосферное рассеяние
Наше уникальное решение для атмосферного рассеяния можно найти в составе этого проекта или скачать отдельным пакетом на Asset Store. Более подробную информацию можно найти здесь.
Инструмент PaintJob
Данный инструмент позволяет рисовать растительность не только на ландшафтах Unity, но и на любой геометрии. Благодаря ему нам удалось по максимуму использовать встроенные инструменты Unity в соответствии с нашими целями.
Вы можете извлечь его из пакета The Blacksmith – Environments и свободно использовать в ваших проектах.
Система растительности
При создании растительности перед нами стояло несколько задач. Во-первых, мы хотели сделать ее мягкой и использовать для нее уникальный шейдинг. Во-вторых, она должна была поддерживать динамический GI и не смешиваться с землей (или с тем, что мы использовали в качестве земли). И наконец, мы хотели, чтобы растительность работала без ландшафтов Unity. Последнюю задачу удалось решить с помощью инструмента PaintJob, а вот все остальные потребовали дополнительной настройки. Мы решили создать компонент, который бы собирал данные из PaintJob, как и с любой другой растительности, добавленной вручную, и генерировал соответствующее количество запеченных мешей. При этом мы могли полностью управлять процессом их рендеринга, применяя любой алгоритм сортировки или проецируя данные с зондов освещения на динамические текстуры.
Шейдер MaskyMix
MaskyMix – это расширенный стандартный шейдер, который смешивает дополнительный набор текстур деталей на основе критериев маскирования (отсюда и название MaskyMix). При создании маски за основу берется значение угла между ориентацией в пространстве мира, определяемой материалом, и попиксельной нормалью, выбранной из базовой карты нормалей. Кроме того, маска может быть модифицирована тайловой текстурой или альфа-каналом с вертексным цветом меша, если таковой имеется. В зависимости от порогов маскирования, указанных в материале, к финальной маске может быть добавлен дополнительный слой деталей. А если в меше предусмотрен альфа-канал, альбедо этого слоя также можно окрасить вертексным цветом.
Модифицированный стандартный шейдер
При создании ролика The Blacksmith мы использовали целый ряд модификаций стандартного шейдера, а также добавили несколько новых фич. Некоторые из них совершенно бесполезны за рамками данного проекта, но есть и такие, которые могут вам пригодиться – их вы найдете в составе стандартного поверхностного шейдера в этом пакете. Вот несколько примеров модификаций: возможность попиксельной выборки значения smoothness из альфа-канала альбедо вместо выделенной текстуры, возможность управления режимом culling любого материала, возможность настраивать цвет и интенсивность отраженного глобального освещения и т.д.
Tonemapping
В одной из предыдущих статей мы уже рассказывали о цветокоррекции и тональной компрессии в ролике The Blacksmith. А после выпуска короткометражки наша команда разработчиков решила внедрить tonemapping в Unity.
HDR-текстуры неба в этом пакете позаимствованы с сайта NoEmotionHDRs (автор – Питер Санитра) в соответствии с лицензией CC BY-ND 4.0 и использованы без каких-либо модификаций.
На этом все. Мы выполнили свое обещание и теперь отправляемся навстречу новым приключениям.
Нам будет очень интересно узнать о том, как вы используете этот демо-проект. Вы можете оставить отзыв в комментариях или написать нам на почту: demos@unity3d.com. А если у вас появятся интересные идеи или практические решения, обязательно поделитесь ими с сообществом.
До скорого!
Более подробную информацию о каждом аспекте работы над роликом The Blacksmith вы можете найти в наших предыдущих статьях:
Знакомство с командой Unity Demo Team и FAQ по проекту The Blacksmith.
Тени персонажей в ролике The Blacksmith.
Создание The Blacksmith: подготовка сцен, шейдинг и освещение.
Карты морщин в ролике The Blacksmith.
Атмосферное рассеяние в ролике The Blacksmith.
Создание The Blacksmith: анимация, эффекты камеры, аудио/видео.
Создание The Blacksmith: концепт и художественное оформление.
Комментарии (7)
OlegKozlov
17.12.2015 09:43+1Круто! Втройне круто, что вы выкладываете результат вашей работы в свободный доступ.
MorfeusKiev
19.12.2015 10:11Ага, поработайте с Paintjob и «Системой растительности» и вы почувствуете настоящую Боль! :) Короче система юзабильна тогда на маленьких сценах. Все что больше, это тормоза, и невозможность настройки. Все так тормозит что в 99% случаев вы просто будете рубать процесс юнити. К тому же они все свои шейдеры писали под Forward рендеринг. С Deffered не так все прекрасно, а порой и ужасно :)
iOrange
17.12.2015 21:49А можно подробнее — какую роль играл Плариум при создании демки?
Darina_PL
18.12.2015 12:02Статья — перевод.
iOrange
18.12.2015 16:50Да, я заметил, просто кроме маленького шилдика «Перевод» больше это нигде не заметно, и, если почитать коментарии к этим переводам, люди поверили что вы имеете к изготовлению этой демки непосредственное отношение и задают вам вопросы (на которые, естественно, не получают ответов).
Вы же видите что первыми коментариями вас благодарят за труд над демкой — а вы никак не пытаетесь донести до людей что труд не ваш.
Думаю было бы правильно указывать в заголовке что Плариум не принимал участие в разработке.
ЗЫ. За перевод отдельное спасибо — материал действительно интересный.Darina_PL
18.12.2015 17:03Перевод он на то и перевод, что мы не добавляем ничего от себя, а переводим статью так, как она была опубликована в оригинале.
Компания Plarium находится в партнерских отношениях с компанией Unity. В первой статье из цикла указывалось, что мы делаем официальные переводы материалов в рамках сотрудничества.
Все благодарности принимает команда Unity, специалисты которой также зарегистрированы на Habrahabr. Мне кажется, все же плашка «перевод» и заголовок «Демо-проект The Blacksmith от Unity» должны как-то подсказывать пользователям о содержании материала.
Но принято к сведению, спасибо. В будущих материалах постараемся, где возможно, указывать авторов, чтобы избежать путаницы.
amarao
Освещение в кузнице меня очень смущает. Не могу сказать про реализм, а с банальной рисовальной точки зрения, на деревянных поверхностях объём с помощью светотени не показан — всё сливается в единую кашу. На тушках тоже объём едва видно.