В този урок ще разгледаме как да вмъкнем 3D топки във филмов низ по-късно. Топките не биха останали статични в сцената, а ще се търкат по улицата. Просто погледнете вграденото видео (не се вижда в PDF изглед).
Автоматично възстановяване
Както можете да очаквате от Cinema 4D, такъв тип сложни задачи като възстановяване на позицията на камерата, насочването и фокусното разстояние от филмов низ се извършва почти напълно автоматично и удобно. За целта избираме командата Пълно възстановяване от менюто Мotion Tracker.
Сега ще бъдем постъпково направени през работния процес на проследяване на движението. Първо трябва да изберем филмовия ни материал за проследяване на възстановяването. В случая с този общ туториал използваме филма "Gasse.mov" от пакета с работните файлове.
В зависимост от размера и продължителността на филмовия низ - и разбира се, от производителността на компютъра - отнема определено време, докато нашия материал бъде зареден, анализиран, проследен и възстановен. Все пак статусната лента вляво надолу ни информира за прогреса.
Когато се появи съобщението 3D възтановление приключено там, Motion Tracker завърши своята работа успешно. Данните за камерата са възстановени успешно от филмовия низ.
Ако погледнем в редактора за 3D, ще видим анимирана камера, поставена на нулевата точка, и цветен облак от точки, наречени Feature-и. Тези Feature-и са точки за проследяване, запазени като Null-обекти, които служат за възстановяване на данните за камерата. Зелените Feature-и сигнализират за добро качество на проследяването, докато червените са по-малко полезни за извличането на информацията за камерата. Повечето невалидни проследявания или Feature-и вече биват филтрирани предварително поради автоматизма.
За сравнение, ето един поглед във Оbъкт-мениджъра. В главния обект Motion Tracker- са разположени основните команди и настройки за проследяване и възстановяване. Като подобекти, реконструираната камера и вече споменатите Null-обекти са в група Auto-Feature-и.
Диалоговият прозорец на обекта Motion Tracker- се разделя на секциите Footage, 2D-проследяване и Въстановяване. Практически това са трите стъпки в работния процес на проследяване на движението, които се извършват автоматично. В секцията Footage е вграден филмовия ни материал с цялата необходима информация.
Секция 2D-проследяване показва нашите настрои за автоматичното проследяване, което вече е изпълнено. Ще разгледаме и ръчното проследяване скоро, но първо трябва да разгледаме филмовия ни материал заедно с точките за проследяване в изгледа на Редактора. За целта просто активираме възстановената камера, като кликнем върху иконата на камерата в Мениджъра на обекти.
Ръчно проследяване
По време на автоматичното проследяване, Motion Tracker вече е открил много забележими точки. В същото време със сигурност ще спомним и места във филмовия низ, които считаме за подходящи или полезни за проследяване. Специално за следващите калибриране или интеграция на 3D елементи е препоръчително да се използва ръчно проследяване, за да се реконструират допълнителни проследявания или Feature-и.
Когато стартираме филмовия низ, като кликнем върху бутона за стартиране, можем да следим пътя или траекторията на точките за проследяване. Тук няма изкривявания, които трябва да бъдат премахнати, защото се държат съвсем различно и биха блокирали работата.
Вместо това върнете плейлиста отново в началото и добавете няколко ръчни проследявания чрез Редактора. За целта щракнете на желаното място във филмовия низ, като държите натиснат бутон Ctrl. Появява се оранжев окантен квадрат с две вложени квадратчета. В средата има рамка за размера на шаблона, външният кант маркира размера на търсене. С щракване върху краищата на оранжевата рамка в долната дясна част можете да настроите тези размери. За преместване на рамката просто я хванете в средата и я преместете на желаното място.
Контрастните преходи като тези на ъглите на затворения кашон са винаги много благодарни точки за проследяване.
Точките за проследяване могат също да бъдат от помощ при по-късна интеграция или за моделиране на 3D елементи. Например, потърсих ъгловата точка на задния вход на къщата. Чрез едновременно натискане на бутона Alt, ние увеличаваме изрязаната част, за да си улесним позиционирането.
Ръчно поставените точки за проследяване ги виждаме в редактора маркирани с тюркоазени кръстчета. Освен това, поставих още няколко точки за проследяване вдън гъсто по градчицата нагоре, за да бъде по-лесно по-късно изграждането им като 3D обект.
За да изчислим тези ръчно поставени точки за проследяване и да ги преобразуваме в Характеристики, отваряме диалоговия прозорец на настройките на обекта Проследяване на движение в областта 2D-проследяване и първоначално се занимаваме с Опциите. Тук виждаме настройките по подразбиране за Размер на шаблона и Размер на търсене на Проследяванията, както и някои допълнителни опции. Чрез опцията Екстраполиране на позицията на търсене можем да помогнем малко, като изместваме областта на Размер на търсене малко напред в очакваната посока на движение.
Сега преминаваме към страницата Ръчно проследяване. В полето Проследявания виждаме всички поставени от нас точки за проследяване отбелязани. Ако нито едно от Потребителските проследявания не е избрано, натискането на бутона Ръчно проследяване, ще доведе до изчисляване на всички посочени точки за проследяване, в противен случай можем също да избираме точки за проследяване самостоятелно и да ги проследяваме поотделно.
Този, който внимателно е наблюдавал Обектния мениджър, би забелязал, че подчинените автоматични проследявания след ръчното проследяване вече не съществуват.
След успешното Ръчно проследяване трябва отново да актуализираме 3D реконструкцията. Това се извършва с бутона 3D реконструкция в областта на Реконструкцията на диалоговия прозорец на настройките на обекта Проследяване на движение.
След успешната реконструкция ние намираме под Обект на проследяване на движение не само нашите АвтоХарактеристики, но и ръчно поставените и проследени точки като Потребителски Характеристики.
Калибриране на сцената
Както вече споменах непосредствено след автоматичната реконструкция, нашата реконструирана камера все още се намира на позицията на произхода с правилно насочване към проследените Характеристики. За ориентацията и позиционирането при следващите работни стъпки това е разбира се много неудобно. Освен това за по-късната анимация се изисква коректно насочена сцена. Затова трябва да калибрираме сцената, което става чрез така наречените Constraint-тагове, които можем да намерим в меню Проследяване на движение> Ограничения.
Започваме с определянето на произхода на сцената; това става чрез Позиционен Constraint.
За определяне на произхода вече можем да използваме всяка проследена Характеристика в нашата 3D гледка. След като сме извикали командата Създай позиционен Constraint, трябва само да кликнем върху избраната точка за проследяване. Аз се насочих към лявия долен ъгъл на градчето, който е точно на земята на заснетата сцена.
В диалоговия прозорец на Позиционния Constraint-таг виждаме кой Характеристика служи като цел за този Constraint, и можем да определим какви стойности на позицията да бъдат там. Тъй като желаем да зададем произхода, оставяме всички стойности на 0.
Сега за да направим ориентацията на камерата и съответно полезни проследените Характеристики, създаваме Плоскостен Constraint чрез същата команда в меню Проследяване на движение.
С този инструмент сега изчертаваме триъгълник между Характеристиките, които трябва да бъдат на едно равнище в нашата сцена. Тези, които познават малките италиански улички, знаят, че подобни равнинни места са по-редкостни, но за нашите нужди трите показани Характеристики за Плоскостен Constraint са напълно достатъчни.
В диалоговия прозорец на Плоскостния Constraint сега трябва да посочим по коя Ос изобразената от нас равнина е перпендикулярна. В нашия случай ос Y.
Нека видим след този калибровъчен стъпка как изглежда позицията на реконструираната камера и съответните признаци в 3D изгледа. Чрез щракване върху иконата на камерата до камерата в Мениджъра на обекти бързо превключваме към режим Редактор на камерата. Както виждаме, в момента камерата е обърната, защото освен началото и осите на световната координатна система нямаме друга информация.
Но тази грешка можем бързо да оправим, като активираме опцията Обърни ос в диалоговия прозорец на констрейнт на плоскостта. Вече камерата в редактора е коректно завъртяна. От тази гледна точка чрез признаците можем да проследим пътеката на улицата, която в следващата стъпка ще моделираме на лесен начин.
Репликация на проследената сцена
Cinema 4D Release 16 предлага чудесен инструмент за репликиране на проста сцена с Полигон Пинцета. Ограничаваме се само до необходимите части - за нашата улица това би било каменното под, десният стенен панел и малък участък от левата стена, за да можем да скрием емитера на топчетата отзад.
Връщаме се към изгледа на реконструираната камера чрез иконата на камерата в Мениджъра на обекти, активираме режима за редактиране на точки чрез палитрата на редактиране и отваряме Полигон Пинцета от менюто Мрежа>Създаване.
За да можем да използваме признаците като помощни точки при работа с Полигон Пинцета, активираме също и Снапинг за точки и оси през палитрата за Снапинг.
Сега можем да започнем да моделираме улицата с Полигон Пинцета. Благодарение на активирания снапинг за точки и оси можем дори да моделираме базовия модел от гледна точка на камерата. Започвам от началото на сцената, което е известно, че е по земята и в лявата част на стената на къщата.
С няколко бързо поставени точки с Полигон Пинцета вече имаме основната форма на улицата нарисувана.
Със щракване по срещуположните външни ръбове създаваме първите раздели с Полигон Пинцета. Внимавайте точките да се придържат възможно най-точно към пътеката на улицата и при необходимост коригирайте малко.
Чрез командата Раздели в меню Мрежа>Команди разделяме земята на улицата, за да получим допълнителни точки за приспособяване на полигонният обект към признаците. Изберете съответно точката на полигона, която е най-близо до точката от проследяването и я пренесете върху признака, докато точката се заключи на него.
След като приключите с земята на улицата, изсечете с Полигон Пинцета ръба на земята нагоре. Тук също трябва да има достатъчно точки на проследяване, за да изградим примитивно стената на къщата.
Имайте предвид: Този полигонен обект ни е по-малко необходим за рендиране, а по-скоро за анимацията с топчета. Въпреки това трябва да работим доста точно, защото в противен случай сенките няма да бъдат хвърлени коректно.
Накрая, ни е необходимо и скривалище за емитер. Трябва да изглежда така, сякаш топчетата излизат от левия страничен вход. За по-добра яснота превключете към стандартния изглед на редакторската камера.
След това екструдираме с Полигон Пинцета в режим Редактиране на ръбове, като влачим с натисната клавиша Ctrl или Ctrl задния ръб отляво нагоре.
Върнете се в изгледа на реконструираната камера и екструдирайте предния ръб по същия начин с Полигон Пинцета към лявата страна. На тази издателство веднага поставяме емитера за топчетата.
Важно е също да построим малко пътека, за да продължим да вървим наляво нагоре след топките, които слизат от улицата. С помощта на проследените функции можем с Полигон Пинцета в режим на редактиране на точки да добавим нови полигони.
Добра идея е да пуснете тестово филмовата поредица междувременно, за да установите дали при движението на камерата е възможно да има места, които не са покрити или не са достатъчни. Тук определено ще стигне един добавен ред с екструдирани полигони.
Ето готовият ми полигонен обект за улицата в пълен изглед. Отгоре вляво може да се забележи издадежа за емитера. За анимация с динамика можем просто да скрием този полигон, обаче по този начин няма да можем да генерираме сенки за топките. Затова просто текстурираме този полигонен обект с материал, който съдържа нашия филм.
Текстуриране на възстановената сцена
Ако вече сте кликнали върху бутона за рендер, знаете, че въпреки миналия труд с Tracker за движение все още няма реални рендъри.
Решението го намираме в диалоговия прозорец на Tracker за движение. Чрез бутона Създаване на фонов обект Tracker за движение създава нов фонов обект и незабавно го мапва с филмовата текстура.
Този текстурен таг, създаден за фоновия обект, сега можем да го използваме директно за нашия моделиран полигонен обект. Просто го плъзнете в управителя на обекти с Drag&Drop, като натиснете Ctrl или Ctrl.
За да нашият текстуриран полигонен обект получава само сенки, без да реагира на осветлението или да хвърля сенки, му присвояваме в управителя на обекти с помощта на контекстното меню чрез десен бутон от менюто на CINEMA 4D таговете един таг за рендер.
В диалоговия прозорец на тага за рендер деактивираме опцията Хвърляне на сенки, докато активираме Композитиране на фона. Така полигонният обект се вписва незабележимо в сцената и е наличен за подходящи сенки.
Един поглед към 3D изгледа от перспективата на реконструираната камера показва, че филмовите текстури са точно подравнени. Това е гарантирано чрез текстурния таг с метода на прожекция Фронтално картиране.
Вграждане на топките с помощта на частицна система
С малка частицна система сега пускаме топките да се навиват по улицата. Ако не желаете да сглобите частицната система и топките сами, можете да я намерите в документа "PSD_C4D_R16_Motion_Tracker_start.c4d" сред работните файлове за зареждане.
Стандартната частицна система на Cinema 4D е напълно подходяща. Затова като първи стъпки добавяме емитер от менюто Симулация>
Частица в сцената.
Като частица създаваме чрез менюто или палитрата на основни обекти обект топка с показаните свойства и го подреждаме в управителя на обекти под емитера.
Заснетата сцена е заснета в Тоскана, в град Волтера. В близките магазини в центъра на града може да се намерят произведения от алебастр. Показаният тук материал с мотиви прилича на този материал.
За цветностния канал избрах шумовия шейдър Електрически и зад това, до бяло, настроена е светло зеленясала сива. Глобалният размер е зададен на 500%, за да се подчертае естествената дървесина.
За канала за отражение използвах стария стандартен блясък и старото отражение като слоеве с показаните настройки. Въпреки че този материал е наистина много прост, той доста добре представя желаното усещане от алебастр.
След като частиците или топките са текстурирани, можем да се заемем с настройката на емитера. В диалоговия му прозорец задаваме ниската режим на раждаемост от 3, така че улицата да не бъде наводнена от топки. Емисията трябва да започне на кадър 0, а производството да приключи до кадър 450, за да могат всички топки да се навиват към края на филмовата последователност.
За живота ни достатъчни са 200 кадъра, топките не се нуждаят от по-дълго време за своя път низ улицата. Скоростта от 200см дава на топките подобаващ тласък, но чрез Вариацията от 50% оставяме място за отклонения.
Настройка на динамичната симулация
За да могат излъчваните топчета да участват в нашата физическа симулация, те се нуждаят от таг Dynamics Body като твърдо тяло (Rigid Body). Ние го назначаваме на топката чрез меню Tags>Simulation Tags от Обектный мениджър или чрез контекстното меню с десен бутон.
В диалоговия прозорец на тага Dynamics Body можем да запазим стойностите по подразбиране в областите Динамика и Сблъсък, само на страницата Маса, задаваме собствена маса от 20, за да топчетата изглеждат достатъчно тежки.
Също така, Полигоналният обект на нашия моделиран проход също се нуждае от таг Dynamics Body, но само като основа за сблъсъка на топчетата. Затова задаваме на този Полигонален обект таг Dynamics Body от тип Колизионен обект.
Също е необходимо само едно малко коригиране в диалоговия прозорец на тага Dynamics Body, параметрите в областите Динамика и Маса, остават на стойностите по подразбиране, докато в страницата Сблъсък, задаваме формата Статична мрежа. Със специалната форма на моделирания проход, без това нямаше да е възможно точно сблъсъка.
За да не всички топчета имат еднакъв размер, правим две или повече дубликати на вече настроената топка и променяме техния радиус. В моята версия добавих още едно топче с радиус 10см и едно с радиус 22см.
Позициониране на системата от частици
Системата от частици вече е напълно функционална, така че ни остава само да я позиционираме подходящо в сцената. Това най-добре го правим, като изключим реконструираната камера, за да работим в стандартният режим на редактора.
Вече сме осигурили мястото за Имитатора по време на моделирането на прохода. Просто го позиционираме малко над дъното на прохода зад издадката и го завъртим, така че да излъчва частиците си през своята Z-ос.
Когато се върнем към изгледа на реконструираната камера, вече е време да проверим физическата анимация. С един клик на бутона за възпроизвеждане стартираме анимацията и наблюдаваме дали всички елементи се държат както сме планирали.
Настройване на сенки и осветление
Както може би сте разбрали от заглавието на този работен стъпка, първо се грижим за сенките, които хвърлят топките върху прохода или стената на къщата. Тъй като в тази сцена основно присъства косвена светлина, създаваме сенките на топките чрез рендер-ефекта Ambient Occlusion. За целта отваряме Предварителните настройки за рендериране през меню Рендер …
… и взимаме рендер-ефекта Ambient Occlusion за сцената ни от бутона Ефекти в левата колонка.
Настройките за този рендер-ефект ги оставяме на стандартните стойности, само изместваме черната точка на градацията в параметъра Цвят, за да подсилим затенението.
С тестване на рендеринга можем да проверим ефекта на Ambient Occlusion. Под топчетата се образува красиво затенение върху прохода, което можем да задържим в принцип.
Все пак, топките все още не са интегрирани правилно в сцената, защото въпреки че част от тях се намират в прохода, всички топки са равномерно осветени. С помощта на няколко източника на светлина можем да постигнем значително по-реалистичен ефект.
В края на прохода имаме директно паспортно светлина. Затова е подходящо, че и топчетата да бъдат осветени отгоре, когато те бъдат излъчени. За целта използваме Прожекторно осветление от палитрата с Обекти за светлина и задаваме външния ъгъл на прожектора на 40°. Прожекторът ни помага за да оставим осветлението само на това място горе в прохода.
Сенките вече сме ги разрешили с рендер-ефекта Ambient Occlusion, затова не трябва да се занимаваме повече с източниците на светлина.
Позиционирането на този първи източник на светлина отново се осъществява чрез стандартната камера на редактора. Позиционираме Spot-светлината директно над мястото, където Emitter-ът изхвърля топките в алеята.
Вторият източник на светлина трябва да улови топките, които се движат надолу по алеята. В принципа ние имитираме наклонения светлинен източник в алеята, така че топките да не бъдат директно осветени между двете светлинни източника.
Тук също използваме Spot-светлинен източник с външен ъгъл от 50°, за да можем точно да контролираме светлинния ефект. С леко синя светлинна нюансация, също имитираме малко небесно синьо.
Както вече споменахме, искаме с този втори Spot-източник да симулираме наклонения светлинен източник в алеята. Затова позиционираме източника на светлина над сцената и го насочваме леко надясно, аналогично на филмовата поредица.
С помощта на няколко допълнителни Point-източника на светлина сега симулираме косвената светлина, която ударя топките от стените и от другата страна на улицата. Първият от светлинните източници получава жълт цвят с интензитет от 60%. Спотове не са необходими за тази осветеност. Позиционираме го леко надясно отдолу в края на алеята, където жълтото на стената е най-добре подчертано.
Вторият от Point-светлинните източници получава по-слабо жълто светлина. Този светлинен източник също не трябва да произвежда спотове, защото целта му е единствено да симулира косвената осветеност отляво. Съобразно това разполагаме източника на светлина приблизително в средата на лявата страна на алеята.
Последният от тези три Point-светлинни източници действа като запълваща светлина и цели да освети малко топките, които се движат надолу от дясната страна. Използваме леко синя светлинна нюансация с интензитет над 50%. Отново не използваме спотове, защото и този светлинен източник трябва да предостави само косвената осветеност.
За финал стартираме отново симулацията и проверяваме светлината ни в момент, когато топките се намират във всички три светлинни станции. Горе най-горе нашата Spot-светлината осигурява светлината отгоре, докато топките в долната част се улавят и осветяват от долната Spot-светлинна източник. В средата на алеята обаче топките получават малко светлина, както е пожелано.
С тези последни стъпки за подобряване на настройките завършва включването на навиващите се топки посредством Match-Moving и можем да стартираме изчертаването на цялата анимация.