У цьому уроці Josh Parks покаже, як з статичною фотографії зробити атмосферне шот зі снігопадом.
У цьому 3D-уроці ми, з допомогою 3D-системи в Nuke, перетворимо статичну фотографію в атмосферне, засипаний снігом шот, з наезжающей камерою, а також навчимося створювати такі артефакти камери, як зерно та ін.
httpvh://www.youtube.com/watch?v=kDUEt3XWuaI
Розглянута нижче техніка повсюдно використовується в різних фільмах, при коректному підході за допомогою неї можна домогтися досить якісних і цікавих результатів.
Зазвичай я волію працювати з зображеннями з високою роздільною здатністю, що настійно раджу практикувати і вам. Файли для уроку.
Етап №01: Знайдіть відповідне зображення і позбавтеся від спотворення камери в Photoshop
Крок №01
Знайдіть зображення у високому дозволі, бажано з висотними будинками і глибиною.
Відкрийте зображення в Photoshop, виконавши команду File>Open.
Крок №02
Потім виконайте команду Filter > Lens Correction.
Крок №03
У відкритому діалоговому вікні Lens Correction натисніть і утримуйте LMB, водячи курсором миші по екрану до тих пір, поки всі лінії не стануть максимально прямими.
Крок №04
Потім збережете зображення, виконавши команду File > Save As.
Крок №05
У діалоговому вікні змінити формат зображення Targa (.tga), назвіть зображення та натисніть кнопку Save. У діалоговому вікні натисніть ОК.
Етап №02: Створіть геометрію в Maya
Крок №01
Створіть камеру в Maya. Для цього зайдіть в меню Create > Cameras і натисніть Camera.
Крок №02
Тепер створіть проекцію отриманого зображення з допомогою опції Image plane.
Потім необхідно налаштувати сцену так, щоб зображення було видно з камери.
Натисніть на камеру за вьюпорте, щоб вибрати її.
Перейдіть в Attribute Editor, який знаходиться в правій частині інтерфейсу Maya.
Крок №03
Прокрутіть Attribute Editor до вкладки Environment. Натисніть на стрілку поруч з Environment, після чого натисніть на кнопку Create.
Крок №04
Завантажте відредаговане зображення на камеру натиснувши на кнопку Folder праворуч від Image Name. Ми будемо завантажувати зображення через камеру, оскільки вона буде використовуватися для проектування зображення в Nuke.
Ми налаштовуємо цю сцену в Maya для кращого розуміння того, як об’єкти повинні бути розташовані.
Крок №05
Перемістіть камеру так, щоб земля на зображенні була врівень з будівлею-референсом в Maya. Так, ми зможемо перейти до створення проекційної геометрії.
Створіть Cube, виконавши команду Create > Polygon Primitives > Cube.
Крок №06
В одному з проекцій налаштуйте вигляд через камеру. Для цього виконайте команду Panels > Perspective > Camera.
Крок №06
Далі необхідно відрегулювати одиниці виміру сцени, оскільки нам необхідно налаштувати сцену в максимально реальних масштабах, щоб домогтися реалістичного спотворення і глибини.
Для цього зайдіть в меню Window > Settings/Preferences > Preferences.
Крок №07
Далі повинно з’явиться спливаюче діалогове вікно. Нам необхідно перейти в налаштування в його лівій частині. Одиниці виміру сцени повинні знаходиться під розділом Working Units, відразу ж за Linear. Свої одиниці виміру я зміню на Centimeters, ви можете змінити свої ті, з якими вам буде комфортніше працювати..
Крок №08
Оскільки я не знаю точного розташування та масштабу будівлі, я редагую куб на око. Для цього виберіть куб і в Channel Box/ Layer Editor налаштуйте значення параметра Scale.
Крок №09
Далі нам необхідно вибрати будівля-референс, в ідеалі нам підійде такий ракурс, коли буде видно один з эджей будівлі.
Потім необхідно посунути камеру так, щоб вона відповідала будівлі-референсу. Тому наведіть курсор на камеру під вьюпорте і натисніть пробіл. Далі необхідно натиснути Alt або LMB для обертання, RMB для переміщення і позиціонувати камеру необхідним чином.
Крок №10
Якщо не вдається підігнати будівля належним чином, то на допомогу прийдуть вертексы. Для того, щоб почати працювати з ними, виберіть геометрію, RMB по ній і виберіть Vertex із спливаючого вікна.
Це дозволить рухати вертексы в кутах геометрії, що дасть більший контроль над геометрією. При цьому постарайтеся не перестаратися, оскільки в подібному випадку є ймовірність спотворення геометрії.
Крок №11
Далі необхідно експортувати геометрію у форматі, зрозумілому для Nuke. Для цього виділіть всю геометрію і камеру і виконайте команду File > Export Selection.
Повинно з’явитися діалогове вікно експорту. Змініть в налаштуваннях тип файлу на FBX і назвіть геометрію, потім натисніть на Export Selection. Тепер можна продовжити роботу в Nuke.
Примітка: Не закривайте Maya, оскільки в подальшій роботі нам потрібно перемикатися між програмами.
Етап №03: Налаштуйте проекції в Nuke
Крок №01
Для того, щоб прочитати сцену, необхідно натиснути R і вибрати місце розташування файлу.
Крок №02
Зображення необхідно очистити від зерна, щоб можна було застосувати до фінального шоту рухоме зерно. Це додасть шоту додаткової реалістичності, а також створить враження того, що відео знімалося на камеру. Для цього виберіть зображення, натисніть TAB, введіть Denoise і натисніть Enter.
Крок №03
Далі Nuke видасть поверх усього повідомлення, питаючи про області для аналізу. В ідеалі нас цікавить область від середньо – до темно-сірого, тому я вибрав будівлі на задньому плані.
Потім превью оновиться, показуючи результат, виходячи з сили впливу команди Degrain. Можна посравнивать різні ділянки і вибрати оптимальний результат, оскільки ми не хочемо надміру блюрить зображення.
Крок №04
Прорахунок ноди Denoise займе якийсь час, оскільки нода не з легких. Для того, щоб полегшити процес, отрендерите версію без шуму і вимкніть ноду Denoise. Виберіть ноду Denoise, натисніть TAB, введіть Write і натисніть Enter.
Крок №05
Отже, ми маємо зображення без шуму, для якого ми будемо налаштовувати проекції. І, оскільки ми працюємо з проекціями, то не можемо сильно рухати камеру, оскільки з-за паралакса камери деякі частини будівель можуть бути невидны.
У цьому шоти ми плануємо проводити зйомку камерою вниз, а це значить, що нам треба збільшити будівлі, але незначно. Ми повинні показати трохи більше того, що вже було показано, а це значить, що цю сферу необхідно скопіювати.
Для цього виділіть зображення, натисніть TAB, введіть Roto і натисніть Enter.
Крок №06
Тепер, коли у нас є нода Roto, ми можемо вирізати кожну будівлю окремо, щоб можна було спроектувати їх на геометрію. Для цього виділіть будівлі і почніть сам процес. Криві Безьє, які можна вибрати праворуч під інструментом Fountain Pen, підійдуть для будівель ідеально.
Крок №07
Далі між нодою Roto і самим зображенням необхідно розмістити ноду Paint, щоб будівлі можна було збільшити виходячи з руху камери. Для цього виберіть зображення без шуму і натисніть P, яка є гарячою клавішею для команди Rotopaint. Потім виберіть інструмент Clone.
Крок №08
Тепер необхідно позначити ті частини будівель, які будуть показуватися при русі камери. Цей процес може зайняти якийсь час, оскільки, можливо, вам доведеться періодично повертатися і розфарбовувати більшу частину будівель в залежності від руху камери. Тому для початку розфарбуємо те, що вважаємо за потрібне. Мені необхідно було розфарбувати низ будівлі і трохи його дах.
Після того, як ми продовжили будівлю, необхідно налаштувати форму Roto, яка повинна відповідати формі будівлі.
Крок №09
Далі необхідно завантажити геометрію, яку ми хочемо спроектувати на свіжо намальоване будівлю. Виберіть ноду Roto і натисніть TAB, потім введіть ReadGeo і натисніть Enter. Потім натисніть на кнопку Folder в ноду Read Geo і знайдіть .FBX файл, експортований з Maya.
Крок №10
Потім необхідно завантажити геометрію, яку ми створювали, щоб спроектувати на неї ця будівля. Для цього повернемося в Maya, виберемо геометрію, яка знаходиться на місці будівлі і буде використовуватися для проектування. Запам’ятайте назву цієї геометрії, щоб розуміти, що завантажувати в ноду ReadGeo.
Тепер, коли ми знаємо назвою геометрії, повертаємося в Nuke, двічі натискаємо на ноді ReadGeo, щоб викликати її налаштування. Вибираємо геометрію для проектування будівлі, натиснувши на сірий дроп-даун поруч з назвою ноди.
Крок №11
Далі необхідно імпортувати камеру, яка спроектує зображення на геометрію. Для того, щоб створити камеру, натисніть TAB, введіть Camera і натисніть Enter. Так, у нас є нода з камерою, тому натисніть на значок Папки, виберіть необхідний файл .FBX, а потім камеру. Процес такий же, як і при виборі геометрії.
Крок №12
Тепер нам необхідно сказати Nuke, що робити з імпортованої камерою. І, оскільки ми хочемо проектувати зображення через неї, нам необхідно створити ноду Project3D, розмістивши її між нодами Roto і ReadGeo. Тому як зазвичай виберіть ноду Roto, натисніть TAB, введіть Project3D і натисніть Enter.
Перетягніть стрілку камери на ноду Project3D, а потім на камеру, щоб з’єднати їх. Так, ми створили першу проекцію.
Крок №13
Нам необхідно створити ноду Scene, оскільки ми збираємося створювати більше проекцій. Тому як зазвичай виберіть ноду ReadGeo, натисніть TAB, введіть Project3D і натисніть Scene, щоб створити однойменну сцену.
Крок №14
Нам необхідно отрендерить поточний результат як 2D-зображення. Виберіть ноду Scene, натисніть TAB, введіть ScanlineRender. Тепер рендеру необхідна камера, яка будемо знімати 3D-сцену. З допомогою ноди Constant я налаштував формат зображення: 1920×1080. Натисніть TAB, введіть Constant і встановіть HD-формат.
Далі нам необхідно сдублировать ноду з камерою виходячи з зображень нижче, оскільки пізніше вона повинна буде рухатися.
Виконайте те ж саме для всіх інших будівель і підключіть ноду ReadGeo до раніше створеної ноде Scene.
Крок №15
Тепер у нас є налаштована 3D-сцена. Далі необхідно створити рух камери, підключеної до ноде Scanline Render.
Виберіть камеру, підключену до ноде Scanline Render, натисніть на її ярлик, щоб змінити її назву на Render_Cam.
Крок №16
Перемістіть курсор в робочий простір і натисніть TAB, щоб змінити 3D-сцену.
Крок №17
На поточний момент ми не можемо переміщати камеру, оскільки нода читає всі її переміщення .FBX файлу. Для того, щоб виправити це, необхідно відключити галочку Read from File.
Тепер у нас є доступ до інструменту Translation, за допомогою якого можна створити рух камери. НА цьому етапі нам необхідно задуматися про тривалості шота, щоб зрозуміти, де на таймлайні розташовувати ключі.
Я вирішив зупинитися на 3-х секундному шоти (72 кадру), оскільки мені потрібно було досить довге відео для шоурила. Самі вирішуйте, шот якої тривалості ви хочете отримати, але пам’ятайте, що камера не повинна рухатися занадто далеко, оскільки для нас це означає додаткову роботу у вигляді розмальовування будівель.
Крок №18
Встановіть ключ у першому кадрі натиснувши на таймлайні, потім RMB значок поряд з атрибутами Translate і Rotate камери, щоб перейти до її налаштування і виконати команду Set Key.
Крок №19
Перейдіть у бажаний кадр шота, на якому ви хочете його завершити, і перемістіть камеру в 3D-просторі з допомогою стрілок або ввівши певні числа Camera Preferences. На хорошу налаштування камери доведеться витратити якийсь час. Для того, щоб бачити область, видиму через камеру, необхідно створити ноду Viewer, налаштовану на 2D-відображення шота.
Крок №20
Створіть нову ноду Viewer, вибравши ноду Scanline Render і натиснувши Ctrl-l.
Крок №21
Після того, як ми визначилися з довжиною шота, необхідно задати параметри проекту. Зазвичай це робиться в самому початку, але для цього потрібно відразу ж знати довжину шота, чого ми не знали. Перейдіть в праву частину робочого простору і натисніть S.
Крок №22
Тепер нам необхідно змінити Frame Range на вибраний, FPS на 24, а розмір на HD 1920×1080.
Етап №04: Додайте глибини
Отже, ми повністю налаштували сцену, тому пора переходити до фінальних штрихів. І настроювання цих решти 10% сцени може зайняти стільки ж часу, скільки і попередніх 90%. Однак, саме на цьому етапі ви можете втілити всі свої задуми.
Сніг
Крок №01
Для того, щоб додати сцену сніг, я для початку скачую безкоштовний футаж з рухом, який був також знятий на чорному тлі. Тепер необхідно перенести футаж в 3D-сцену.
Секвенцію зі снігом можна прочитати натиснувши R і вибравши відповідні файли.
Крок №02
Далі футаж необхідно помістити в 3D-сцену. Для цього виберіть футаж і створіть Card, натиснувши ТАБУЛЯЦІЇ, впечатав Card і натиснувши Enter. Тепер приєднайте Card до ноде Scene також, як ми чіпляли будівлі.
Крок №03
Зараз Card залита одним кольором, а самих сніжинок не видно. Для того, щоб пофіксити це, необхідно призначити на футаж зі снігом альфа в режимі Premultiply, щоб сніжинки стали видимими. Для цього виберіть секвенцію снігу ще раз, натисніть TAB і введіть Shuffle.
Нода Shuffle дозволяє міняти місцями інформацію в каналах. Ми хочемо зробити альфу з червоного каналу, тому поставте галочку під R input.
Крок №04
Тепер потрібно помножити на альфу значення каналу RGB. Темні ділянки альфи мають значення 0, білі – 1. Тому при множенні 0 на будь-які значення виходить 0, що призводить до появи прозорості.
Пам’ятаючи про це можна скористатися інструментом Grade, щоб налаштувати значення альфи сніжинок в районі 1. Для того, щоб пофіксити альфу, виберіть ноду Shuffle, натисніть TAB і введіть Grade. Змініть Channels на Alpha так, що вони впливали тільки на альфа-канал.
Крок №05
Отже, альфу ми пофиксили. Тепер можна переходити до використання ноди Premultiply, щоб помножити альфу на RGB-значення. Виберіть ноду Shuffle, натисніть TAB і введіть Premultiply. Вносити жодних змін не потрібно, тому залишимо цю ноду такий, як є.
Далі можна переходити до розміщення снігу. Виберіть Card, переведіть курсор в робочий простір і натисніть TAB, щоб повернутися до 3D-сцени, а потім перемістіть сніг з допомогою стрілок або атрибутів Translate.
За допомогою слайдера Uniform Scale можна скейлить Card. Це також отскейлит футаж, тому будьте уважні і дотримуйтесь коректного масштабу, щоб сніжинки залишалися однаковими.
Крок №06
Нам необхідно, щоб сніг був на задній, середній і передній плани, щоб додати шоту реалістичності, а снігу глибини. Для це прикріпіть до футажу зі снігом ще одну ноду Card, перемістивши її в місце, відмінне від попереднього.
Ви можете помітити, що зараз наш сніг рухається синхронно і однаково, оскільки ми використовуємо один і той же футаж. Це можна пофіксити з допомогою ноди TimeOffset, яка зміщує початковий кадр. Я використав цю ноду для того, щоб додати снігу природності, а також усунути футаж на рандомное число кадрів в будь-якому напрямку.
Далі цю процедуру необхідно повторити кілька разів, необхідну кількість снігу не покриє сцену.
Рухомі автомобілі
Крім того, я вирішив додати в сцену рухомі автомобілі для додаткового реалізму.
Крок №01
Для того, щоб створити рухомі автомобілі, їх необхідно спочатку вирізати з зображення. Тому виберіть зображення без шуму, натисніть TAB і введіть Roto. З відкритим вікном налаштувань змініть Output на Alpha, виберіть криву Безьє з лівого боку і намалюйте необхідну форму.
Я трохи растушевал виділення по краях, зокрема там, де розташовані фари. Для цього затисніть Control і перетягніть точки, що додасть автомобілю миле загасання.
Крок №02
Тепер нам необхідно помножити наше зображення на тільки що створену альфу в зворотному порядку. Для цього виберіть ноду Roto, натисніть TAB і введіть Premult.
Далі нам необхідно вчинити з автомобілем також, як ми робили зі снігом. Виберіть ноду Premult, натисніть TAB і введіть Card. Потім цю ноду необхідно прикріпити до ноде Scene, щоб ми могли спостерігати її розташування. Поставте автомобіль на місце за допомогою стрілочок.
Тепер ми можемо або заанимировать цю ноду, щоб автомобіль почав рухатися на сцені, або створити нову ноду Transform Geonode. Ця нода дозволяє трансформувати геометрію, до якої вона приєднана. Тому натисніть TAB з обраної нодою Card і введіть TransformGeo.
У відкритих налаштуваннях RMB на полі поруч з Translate баром і натисніть Set Key. При цьому ви повинні перебувати в першому кадрі на таймлайні. Тепер перейдіть в послежний кадр і посуньте Card з допомогою стрілок на бажану позицію і поставте ще один ключ.
Градієнт
Крок №01
Далі необхідно додати на зображення градієнт, після чого можна спокійно переходити до додавання фінальних штрихів. Зробити це можна по-різному, але я віддаю перевагу ноду Grade.
Тому виберіть ноду Scanline Render, натисніть TAB, введіть Grade і натисніть Enter.
Я хотів додати в шот блакитних відтінків. Так, я натиснув на бар Color, поруч з Multiply і додав трохи синього.
Крок №02
Крім того я створив кілька нод Transform (Tab > Transform), щоб отмасштабировать зображення, краще вписавши його в простір.
Етап №05: Фінальні штрихи
Для одержання більш реалістичного шота необхідно використовувати кілька атрибутів, щоб імітувати зйомку камерою. Одним з таких атрибутів є розмиття із-за руху камери або Motion blur. Для отримання такого ефекту необхідно виконати дії, описані нижче.
Розмиття від камери
Виберіть ноду Transform, натисніть TAB і введіть VectorBlur, встановіть Motion для UV Channels. Для того, щоб налаштувати кількість застосовуваного розмиття, необхідно відрегулювати параметр Multiply до отримання бажаного результату.
Спотворенням від об’єктива
Для більшої реалістичності я вирішив додати в шот спотворення від об’єктива.
Для цього виберіть ноду VectorBlur, натисніть TAB і введіть LensDistortion. У створеній ноде пограйте зі значеннями атрибута Radial Distortion 1 і 2, поки не досягнете бажаного ефекту (використовуйте невеликі значення).
Зерно
Ми практично закінчили з шотом, залишилося додати йому трохи зерна. Зерно зазвичай особливо помітно в темних ділянках зображення, тому для створення такого ефекту нам доведеться скористатися маскою.
Крок №01
Виберіть ноду Lens Distortion і знову натисніть TAB і впишіть Keyer. Ця нода дозволить витягати ключі з даних, приєднаних до ноде. Тому відкрийте налаштування ноди Keyer, наведіть курсор і затисніть A, щоб побачити альфа-канал, який ми збираємося створити.
Тепер перетягайте два бари, один праворуч, другий ліворуч, до тих пір, поки не добьтесь хорошого контрасту між темними і світлими ділянками. Ми ж не хочемо, що в альфі були чисто чорні або чисто білі ділянки.
Крок №02
Після того, як LumaKey створено, необхідно створити ноду Grain. Тому виберіть ноду Keyer, натисніть TAB і впишіть Grain.
Ця нода застосує зерно до всього зображення не звертаючи уваги на альфу, тому перевірте, щоб стояла галочка Apply Only Through Alpha, а також Invert Alpha, що збільшить зерно в темних ділянках зображення. Далі знову відрегулюйте налаштування Keyer, щоб отримати бажаний ефект.
Крок №03
Далі необхідно записати отриманий шот. Для цього виберіть ноду Grain, натисніть TAB в останній раз, впишіть Write і натисніть Enter. Після того, як відкриються налаштування ноди Write, натисніть на значок папки поруч з панеллю File і виберіть місце для збереження файлу.
Тепер нам необхідно отрендерить секвенцію кадрів. Для цього нам знадобиться приписати пару символів # після назви. Ці символи будуть відповідати за спосіб нумерації кадрів, наприклад, якщо я напишу ###, то кадр під номером 001 стане першим кадром.
Потім необхідно сказати Nuke, у якому форматі зберігати файли. Я використовую dpx, тому я вписую .dpx після назви і три символи ###. Таким чином, файли будуть називатися title###.dpx. Інші налаштування можна залишити за замовчуванням, тому далі можна просто натиснути на кнопку Render.
У черговому діалоговому вікні перевірте Frame Range і натисніть OK.
Висновок
В ході цього 3D-уроку ви навчилися створювати атмосферне шот зі снігопадом з статичною фотографії з допомогою Nuke і Maya.
httpvh://www.youtube.com/watch?v=kDUEt3XWuaI
Читайте в нашій попередній статті про симуляції рідини в Real Flow.
Хочете знати більше? Приходьте на наш фундаментальний курс за Nuke.
Журналіст: Альона
Джерело