Оптимизиране на настройките на рендера - Материали

Безплатни 20 урока
регистрирай се и научи

Ако сте вече потребител - Регистриран съм
Видео
В тази част ще оптимизираме материалите, като може би най-важният материал, който трябва да оптимизираме е материала за тревата.
Да рендерираме една малка част.
Тази част е с "displacement" и ще се рендерира сравнително бавно.
Вече имат влияние светлините и "GI" системата.
Рендера ще става все по-бавен.
А за да имат влияние и материалите, които сме приложили в сцената, ще трябва от "global switches" да махнем отметката на "override" материал.
Така вече използваме материалите, които са заложени в сцената.
Тази част се рендерира за 15,7 секунди.
Сега тук много трудно мога да видя, какво влияние имат реално субдивижъните на материала и единственото, по което ще се ориентираме е само времето.
Също така мога да взема предвид всъщност и "reflection" паса Тъй като в този материал има заложена рефлекция.
И така с 8 субдивижъна, 15,7 секунди.
С 256 субдивижъна, 17,3 Със 128, 13,9.
Ще пробвам и 160, тъй като тази аз тук е много важна, тя заема голяма част от рендера и тази оптимизация тук ще се изплати многократно.
При 160 субдивижъна 14,1 Ще оставя тази стойност така 160 субдивижъна и другата част от материалите, която е важна са короните на дърветата.
Ще рендериране някоя част тук отгоре.
Пак хранителна малка.
1 минута и 7 секунди да видим в материала.
Те също използват рефлекция 8 субдивижъна.
По същият метод ще експериментирам.
Първо със 128 и в трите материала едновременно.
Със 128 субдивижъна, 52,6 секунди Със 160 за всички материали, Със 160, 52,3.
И последен експеримент с 200 субдивижъна.
200 субдивижъна, 52,2.
Оставям тази странност така и третият материал, който може да оптимизираме е стъклото.
То също много важен материал в тази сцена.
Ще експериментирам отново върху малка част.
47,3.
Тук ще погледнем, какво се случва обаче и в допълнителните пасове, които пуснахме за "reflection, refraction".
Този е сравнително чист Този обаче ще видим, как ще се промени с увеличаване на субдивижъните.
Ще започна със стойност от 128 и за "reflection" и за "refraction".
55,2 секунди.
Ще пробвам със стойност от 200.
48,1 и следващата стойност, с която ще пробвам е 300 в "refraction".
За "reflection" тук всъщност не е необходима чак такава стойност.
От 128 не забеляза никаква промяна.
Ще експериментирам с тази двойка 128 - 300.
48 секунди точно.
Оставям тази стойност така, а другите материали, които използват изобщо някаква рефлекция, ще използвам междинна стойност от 64.
Те са второстепенни и за тях тази стойност няма да играе в собено значение.
И нямат много важна роля по време на рендера.
Те заемат процентно малка част от изображението.
По този метод може експериментално да оставите, кои са оптималните настройки за всеки от тях.
Като тази промяна тук може всъщност да направите автоматично със скрипт, който може да свалите от интернет.
Тук ще приключим с оптимизирането на материалите.
В следващият урок ще направим едно общение и ще пуснем финалният рендер.

Въпроси и отговори

  • Кой е скриптът?

    Vray_sun:

    Здравейте, кой е скриптът, който споменавате в края на видеото?

    Ивайло Искренов:

    Здравей,

    скрипта който ползвам аз е "VMC (VRay Material Control)". Има и други, но този съм го изпробвал и работи много добре. Можеш да го свалиш от тук :
     http://www.scriptspot.com/3ds-max/scripts/vmc-vray-material-control
    Vray_sun:

    Защо използвате fresnel=60 за стъклата? Не се ли използва ст-ст между 1,4-1,6? Дори и в модула за материалите при направата на стъкло го казвате/
    Тъй като въпросът ми първоначално не се изпрати, направих проба. На прикачената снимка горе е с fresnel=60, долу- fresnel=1.6. Но не мога да си обясня защо при ст-ст 1,6 е толкова черно и няма отражения от лампите?

    Ивайло Искренов:
    Здравей,
    много се радвам, че повдигна въпроса, и той всъщност е съвсем уместен. Наистина има разминаване, с  това което казах в предишните видеа при създаването на рефрактните материали, за това е добре да обясним какво точно се случва.
       Връщам се отново на стойностите, който сме избрали за IOR =1,4 – 1,6 за обикновеното кварцово стъкло – потвърждавам, че тези физически параметри са в границите на „реалното” и това е физически коректно. Обръщам внимание обаче, че тук говорим за индекс на пречупване на светлината в параметъра Refraction. Този параметър в Reflection обаче се нарича Fresnel IOR, което е различно от параметъра IOR в Refraction. Тъй като всички материали имат френелова рефлекция, за това и отметката на Fresnel reflections е сложена по подразбиране. Количественият параметър който определя този тип рефлекция е Fresnel IOR, който пък по подразбиране е Lock-нат (заключен), което значи, че ще се използва същата стойност, която присъства в Refraction IOR (1,6 default). Ако отключим този параметър обаче можем да ги променяме независимо един от друг.
       С тази стойност, която съм избрал 60 (която няма значение реално дали е 60, 30 или 80 – визуалният резултат ще е един и същ) съм се опитал да компенсирам друга грешка която съм допуснал :) … И тази грешка всъщност е нещо доста важно при използването на рефрактни материали, а именно  - Обекта, върху който се прилагат материали с рефракция, трябва да имат дебелина на стената ! Да обаче, аз съм пропуснал Shell модификатора върху равнините, който представляват стъклата на прозорците, за което се усетих прекалено късно, и след това се опитах да компенсирам с нереална/некоректна стойност (похват, който не знам дали е толкова лошо да се използва, ако постигаме това което харесваме :) ).
        Но наистина, най-коректното решение в случая ще бъде стъкло (като материал), като това за което сме говорили при разработването на материалите), и стъкло (като геометричен обект), с дебелина на стената.
       (* Тъмната част в рендера идва от това, че ти липсват всички текстури и proxy обекти, които са ползвани в сцената ( + HDRI изображението за купола, който се вижда). *)

    Симеон Спасов:

    Здравей! Защо в някои от случаите при увеличаване на събдевижъните на материалите (а в предишните уроци и на светлините), времето за рендериране намалява. Не трябва ли да се увеличава?

    Ивайло Искренов:
    Здравей,
    ако следваме простата логика (която в много от случаите е вярна :) ) би трябвало времетода се увеличава - и ако прекалим с това увеличение то найстина ще се увеличи. Но, при V-Ray (съвсем образно) нещата стоят по следният начин : малко subdivs = недостатъчна информация за коректни изчисления, което значи в повечето случай бърз рендер и ниско качество ; прекалено много subdivs = допълнителна за изчисление информация, над необходимото, която трябва да се пресметне и в повечето случай води до увеличаване на времето за рендериране, но пък вече имаме по- високо качество. До тук логиката е логична :) ... къде става объркването на тази линия - когато не използваме крайно ниски или крайно високи стойности ... което е през повечето време. И този процес на "уцелването" на правилният брой subdivs във втори модул съм го кръстил "оптимизиране на рендера". Продължаваме с образното обяснение да видим какво се случва тук - на базата на предварително зададени критерии в настройките, V-Ray пресмята цветовата стойност за всеки пиксел - ако събдивижъните са достатъчни за коректен резултат от изчисленията, изчисленията за съответният пиксел се прекратяват и продължават за следващият … което е възможно най-бързото решение. Остават два въпроса обаче - „колко subdivs (като брой) са достатъчни” и „как да определим точният брой”. Отговорите за момента са ясни – не знаем предварително броя на „достатъчните” subdivs” и ги определяме експериментално. 
       В много от случаите, тази оптимизация не е оправдана относно времето което ни е необходимо да я направим коректно – за това, залагаме „повече” в настройките и чакаме по-дълго рендера. Ако не сме сигурни за другите настройки (в което няма нищо лошо … ) – не е лоша идея да започнем с Quick Settings от V-Ray toolbar-a и да плъзгаме слайдерите и да гледаме какво се увеличава/намалява в настройките и да следим времето за рендериране.
       Искам да приключа този пост с една молба – ако имате въпроси по нова тема, която не откривате във форума – започнете я с ново заглавие, а не като продължение на друга различна тема, за да може и други хора, който ги интересува това да я открият и четат лесно. Идеята е информацията да е лесно достъпна за всички и да можем бързо да намерим това което ни интересува.
    Благодаря на всички предварително :)