Мейкинг Оф 3д маппинг шоу.

Всем привет, решил немного написать о том как это было - создание окружения для некоторых сцен мультика "Хранители".

139a9c86990746bd733acb2ede12af96.jpg

Под катом некоторые подробности и этапы создания.

Основной сложностью было разрешение изображений в 12000 пикселей по ширине. Это требовало нереально большой детализации 3д моделей, практически везде использовался дисплейс и прокси высокодетализированных мешей, ко всему прочему некоторые сцены были довольно динамично заанимированы, полного видео в нормальном качестве я пока не нашел, есть только что то такое https://youtu.be/8HK-kmn6soQ?t=2273 

218dd24bf7e90243a6656d27a56f325e.gif

(К сожалению движок сайта не хочет отображать гифки, поэтому вот прямая ссылка на ГИФ )

На гифке чистый рендер переходящий в финальный комоз. Времени было очень мало, поэтому единственный выход был в том, чтобы сделать рендер, максимально подходящий под композинг и доведение картинки до финального качества уже силами фьюжена. По моему опыту добиться такого результата в чистом рендере можно только потратив в 5-10 раз больше времени, да и то не факт что получится :) Но за моими плечами боевого мага-композера 80 уровня было несколько нехитрых приемов, которые я и применил:1. Во всей сцене только 1 растровая текстура и только 1 материал, который назначен Override на всю сцену.Это позволило исключить все потери времени связанные с кучей текстур, материалов и адаптацией их к разным моделям освещения и тп, ведь в начале было вообще не ясно как можно быстро и красиво это порендерить вообще, особенно когда сдавать надо было "вчера".2. Один из самых важных моментов в работе над любой сценой это её структура, а точнее правильная топология. Все элементы должны быть ЧЕТКО разделены и быть очевидны любому человеку сходу, без детальной разборки со сценой. Я делаю это разбиением сцены не только по слоям(в этом нам помогает не стандартный менеджер, а великолепный скрипт -  "The Onion", написанный одной очень известной CG студией - Blur Studios. Скрипт бесплатный и очень полезный, но про него можно писать отдельную статью), но и визуально по обжектID. Важно сделать каждому айди-свой цвет, тогда всё будет сразу понятно и просто.Впоследствии каждый ID рендерится в маску, с которой мы в композе и работаем по отделению одного "материала" от другого.

41f9f1061b26a9cf4cd811e810860dfd.jpg

3. Далее для детализации текстуры мы добавляем слои, которые предадут жизни всем нужным материалам.Этот слой я называю SplitTexture и состоит он из бесплатной версии плагина GroundWiz, который без маппинга умеет создавать супер детализированные маски, которые не повторяются и работают в анимации как обжект спейс.

9bfba9983edc38c00843aeb2b8ffdb1c.jpg

Используя RGB составляющие и ObjectID для камней и скал мы делаем цветокоррекцию и смешиваем с другими текстурами, добавляя в нужных местах детализации. Так же можно сделать несколько дополнительных каналов с различными текстурами, которые можно смешивать друг с другом. Например используя стандартный Noise как маску смешивания. Более подробно я постараюсь описать это в отдельной статье.4. Освещение в сцене сделано 4мя источниками света. Это 4 SpotLight и несколько их instance копий. Спот лайт отлично подходит для освещения подобной сцены сразу по нескольким причинам. В отличии от обычного VrayLight у него есть затухание, область действия и полностью контролируемая мягкость, плюс ко всему этот источник света крайне быстро рендерится, так как тени не воздействуют на всю сцену, а только на нужный нам участок - крайне важно ставить затухание ровно там где заканчивается действие этого светильника. Наш основной источник света светит практически под прямым углом - вниз, чтобы дать освещение пещере. Ещё пара светильников красного сверху и синего снизу работает как эмбиент подсветка, с отключенными тенями таким образом, чтобы давать красивые синие отблески как бы из глубины пещеры сзади и красные, как будто там есть какая то лава или что то подобное - спереди и сверху. Ещё несколько идентичных главному споту лайтов используется для подсветки стен по краям изображения (красный и синий тон), в этих лайтах используется текстура на вкладке прожектора, чтобы имитировать неравномерность освещения и давать не прямой свет, а с кучей теней (это делается картой Noise с планарным маппингом на UV1).

8e4a40439f900873244cadad499a6434.png

Лучи света реализованы отдельным пассом через всё тот же спотлайт, совпадающий с основным по позиции, но отдельно настроенный для работы с эффектом VrayEnvironmentFog,  Черный материал на всю сцену + подобранный правильно размер шума на карте прожектора и рендер такого эффекта занимает примерно 5% от рендер тайма основного РГБ пасса.

72f7eca0bd61f774fad271799539ecf5.png

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

а. Цветокоррекция и детализация всех объектов сцены по их слоям и обжект айди, добавление эффектов грязи, потертостей и тп с помощью доп каналов Curvature, Invert AO.

б. Дополнительная проработка общего освещения сцены с помощью АО, Zbuffer, World Space Noise и Рефлекшн оклюжена.

в. Добавление общей цветокоррекции сцены путем изменения кривых - до получения нужного цвета для всей сцены.

г. Добавление SoftGlow, DOF, Motion Blur там где это нужно и т.п.

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

0a8121d441523283775dcd4f69d64ae7.png

Это пожалуй всё, что можно написать побыстренькому, ибо как обычно времени не хватает и надо бежать дальше :) Если данная информация кажется вам полезной, то не забывайте ставить оценки, лайкать и репостить, это очень сильно помогает находить время для написания подобного материала :)PS: Немного рабочих моментов

5be71acab119af38068be40883e969d5.gif

(прямая ссылка на ГИФ )

Оказывается скаттер не умеет держать объекты, если объект рассадки анимирован...(гиф не влазит :) )

На этом утекло просто миллион тонн крови и пота.

Дух-Терминатор, рожденный в 6 часов утра :)

73006c703a4ffb20cca69df37daa88ec.jpg

Пенка на воде в финальном мультике почему то не обнаружилась)

81f4b08c6dee7a001ec7bcc853e08396.png

Маски для разделения типа повехности у земли

05e8b53bcc79443db3d5c074c75c4ce9.jpg

Рендер 1 кадра:

c75504b99df28666247ce5e407b748e2.png

Моя группа в ВК , где я выкладываю подобные статьи и просто интересные штуки. Не забывайте ставить лайки, подписываться и репостить, а то лень новые полезные статьи писать :)

Комментарии (6)

0
DoCentttt
А что за мультик? Не слышал о таком.
+1
niak_ris
Это же 3д маппинг, он на МГУ транслировался только. Гуглится вот так
http://tinyurl.com/z5rf67d 
0
DoCentttt
Спасибо за дополнение, ща позырю мульт.
0
simon310
Молодцы!
0
Arthas_Sapphire
вау!
0
3d-andrew
Интересно