Як покращити якість рендеру в короні

Як покращити якість рендеру в короні



Corona Renderer - Оптимізація, Тести.

Здрастуйте, шановні колеги!
Представляємо вашу увагу роботи з дослідження рендер движка Corona, з ухилом на архітектурні анімації. рендерингу та обсяг займаної пам'яті.
Щоб тести були більш-менш об'єктивними, всі вони проводилися в інтер'єрній сцені, тому що навряд чи зможемо заощадити на стінах, вікнах, шторах і базовому освітленні. Для кожного окремого тесту в цю сцену містилися різні додаткові об'єкти та джерела світла.
*Вихідна сцена Всі тести проводилися на одному комп'ютері, що окремо стоїть, через Backburner, в повному спокої, без будь-яких сторонніх процесів.
1. Базові налаштування для рендерингу анімації:
- Lock sampling pattern off (Статичний шум дуже важко вичищати, він буде висіти на екрані як бруд на склі, краще вже нехай картинка шумить)
- UHD Cache – Animation (flicker-free) (щоб GI не створював артефакти), так само бажано збільшувати Precision, особливо в сценах, де багато деталей, світильників. Я використовую від 2.0 до 4.0. возитися і витрачати свій робочий час.
2. Результати тестів:
Max ray depth:
Картинка в інтер'єрі виглядає досить добре лише при 6-7 переображеннях, і то тільки якщо там немає скляних об'єктів.Далі цей параметр практично не впливає на час рендерингу. Тому заощадити тут не вдасться. Навіть коли половина екрану заставлена ​​хромованими об'єктами, різниці між 15 відображеннями та 20 практично немає.
GI vs AA:
Для цього тесту до сцени був доданий Motion Blur і DoF, т.к. ми говоримо про анімацію, то часто їх доводиться вмикати. І саме в таких випадках зниження GI vs AA допомагає швидше позбавлятися артефактів. Вкрай не рекомендується ставити 0-2, вони дають сильний шум. Добре себе показують значення у районі 6. Різницю у кількості «світлячків» видно неозброєним поглядом.
*У випадках, коли ми не маємо ні розмиття руху, ні глибини різкості, можна залишати за замовчуванням.

Light Samples Multiplier:
*Перший тест проводився із досить сильною глибиною різкості. При значеннях 0 картинка дуже шумить. А ось зниження цього значення до 0,2-0,5 нерідко дає досить непоганий результат, більше пасів і нижче шум.
*Другий тест проводився без глибини різкості.
У цьому тесті вплив цього множника набагато нижчий, але досі достатній, щоб намагатися його зменшувати. Особливо, якщо основне джерело шуму, це багатошарові матеріали, що відбивають, каустика, підповерхневе розсіювання і глибокі тіні.
І навпаки, якщо у нас об'єктів, що мало відображають, а вся сцена в основному складається з однотонних матеріалів, що не відображають, то можна збільшити цей множник.
Max Sample Intensity:
*Перший тест проводився з досить сильною глибиною різкості по всій стіні.
Чим вище значення, тим часом рендерингу та значення шуму теж вище. Тут важливо знайти золоту середину, т.к. ідеальні значення залежить від сили джерел світла у сцені.Наприклад, у цьому випадку найсильніші джерела світла мали потужність 50 одиниць при експозиції -0.5. Тобто краще прагнути зменшити Light Samples Multiplier так, щоб загальне освітлення і сила відблисків не змінилися занадто помітно. Тоді ми можемо зрізати 5-10% часу з кадру, що досить відчутно.

*Другий тест проводився без глибини різкості. На сценах БЕЗ глибини різкості (або розмиття руху) цей ефект відчутно слабший, але загальний тренд такий самий.
Displacement:
Для початку необхідно сказати, що в анімації вкрай не рекомендується використовувати Screen size (px) Displacement, в першу чергу тому, що він породжуватиме артефакти та флікеринг на межах кадру (оскільки об'єкт змінюватиметься в міру входження/виходження в кадр) . А також необхідно пам'ятати, що для відображень Corona створює спрощену модель, і коли ця спрощена модель починає відображатися в інших об'єктах, а тим більше під час анімації, вона породжує артефакти.
*Ближню частину об'єкта видно і в сцені, і в дзеркалі. Далека частина об'єкта в одна тільки в дзеркалі
Безпечніше використовувати World size (units), попередньо зробивши кілька тестових рендерів для найближчих ракурсів, які ми плануємо. У разі інтер'єру значення може бути від 2.0cm до 0.01cm. І так, це потребує в деяких випадках більше оперативної пам'яті, але позбавить нас від головного болю та перерендерів. Проведено тест на вплив кількості полігонів у вихідному об'єкті. Внаслідок цього не було помічено сильного впливу на швидкість рендерингу.
Тому немає сенсу турбуватися про це, доки нам вистачає оперативної пам'яті. Але, однак, не потрібно додавати додаткових полігонів на об'єкт, якщо цього не потрібно.
Caustics Solver:
Зрозуміло, рендер каустики в анімації дуже дорого обходиться за часом, і краще уникати його або робити фейк. На якість та швидкість каустики дуже сильно впливає кількість пасів, тому низькі значення GI vs AA допомагають отримати найкращий результат. Значення 6-8 дадуть багато пасів та не зіпсують картинку. Саме для якості каустики ще нижчі значення дають ще чистіший результат, але там вже сильно страждає якість інших відображень та загальний рівень шуму.
Зміна Light Samples Multiplier у менший бік також дає невеликий приріст швидкості. Значення в районі 0.5-1.0 не псують картинку та дають помітну економію швидкості.
Exposure: Якщо раптом, когось цікавить, чи відрізняється швидкість рендерингу при високих значеннях експозиції та слабкому світлі від швидкості при низьких значеннях експозиції та сильному світлі. Відповідь: ні, не відрізняються. Можна робити дуже темні сцени та піднімати експозицію, а можна навпаки.
*три тести з різними рівнями експозиції та силою джерело у світла

Multi/Sub-Object Material: Зверху вниз:
1) Рендер з однією великою текстурою 1 Гб, зажадав 3 Гб ОЗУ
2) Рендер із 10 великими текстурами 1 ГБ, зажадав 21 Гб ОЗУ
3) Рендер з 10 великими текстурами 1 ГБ, але, у сцені призначено лише одне ID, для першої текстури, інші текстури взагалі беруть участь у сцені. Тобто. по ідеї, інші 9 текстур не повинні вантажитися, але вони вантажаться. Знову 21 Гб ОЗУ. Вичистити ці зайві гігабайти можна лише видаливши зайві ID матеріали та перезавантаживши 3ds Max. Ще одна вагома причина
не збирати всі матеріали в один великий Multi/Sub-Object Material. * три тести з різною кількістю завантажених текстур
Corona Light vs Corona Light Material vs Self-Illumination:

Можна сміливо стверджувати, що нативне джерело світла Corona Light та спеціальний матеріал Corona Light Material умовно ідентичні за своєю швидкістю роботи. У тесті видно різниця між ними, так. Джерело світла впоралося повільніше і дало менше шуму. Але річ у тому, що за умовчанням Light Samples Multiplier стоїть на 2.0. За коефіцієнта 1.0 результат практично ідентичний.
Використовувати Self-Illumination як сильні джерела світла не рекомендується навіть у офіційній документації.

При цьому якщо взяти 250 джерел світла і 250 об'єктів з Corona Light Material, то джерела світла виграють і рівню шуму при рівній кількості витраченого часу. Тобто. якщо джерел світла багато, то Corona Light все ж таки краще, особливо з урахуванням того, що ми можемо зменшувати Light Samples Multiplier нижче 1, що дасть гарний приріст у сценах із сильно глибиною різкості та розмиттям руху.
Edit Mesh vs Edit Poly: Для Corona Render немає різниці, який об'єкт рендер, Mesh або Poly. Але для самого 3ds max різниця є! * сам рендер забрав по 9.5 Гб ОЗУ в обох випадках
Так, наприклад, 50 мільйонів полігонів у Edit Poly під час рендеру займають 31.5 Гб ОЗП. А ось ті ж 50 мільйонів конвертовані в Edit Mesh
займуть 25.7 Гб ОЗП. Тому дуже корисно конвертувати свої моделі в Mesh (саме базову геометрію до модифікаторів згладжування), якщо це нічого не ламає у вашій сцені.
NURMS vs MeshSmooth vs TurboSmooth vs OpenSabdiv: Схожа ситуація з модифікаторами згладжування. Для самого рендер движка різниці важливої ​​немає. А ось для 3ds Max цілком різниця є, т.к.для кожного методу потрібна різна кількість оперативної пам'яті.
NURMS - 9800 Мб
MeshSmooth - 11920 Mb
TurboSmooth - 7960 Mb
EditMesh + TurboSmooth Hidden - 7388 Mb
OpenSabdiv - 10837 Mb
Тобто. Для збереження пам'яті ідеально використовувати Turbo в режимі "Off in Viewport". Якщо, звичайно, вам не потрібен інший особливим чином налаштований алгоритм (що у 99% випадків не так).
Denoise:
На фінальний рендер таки варто включати Denoising "Corona Hight Quality". Найчастіше добре працює Amount 0.5 – 0.75 c Radius 1.0.
3. Висновки: Навіть Corona Render можна оптимізувати та економити час та гроші за оплату рендер-ферми. Та не сильно. Але у випадку з розмиттями глибини різкості та руху – дуже сильно! Якщо є можливість не рендерувати чесну глибину різкості та розмиття руху, то краще зробити їх на постобробці. Так само на пост-обробці можна перемогти різні види «світлячків», не завжди є сенс намагатися позбавитися їх чесним способом. Зазвичай, це дуже довго і дорого.
Ще більше часу заощадить зміна рендер-движка, наприклад, на FStorm
Дякую за увагу, швидких та чистих вам рендерів! 768 0 850 11

Про всяк випадок залишу посилання на результати тестів у таблиці: https://docs.google.com/spreadsheets/d/1r7V0TEjaXG.

вставлю свої 5 копійок
"Так, наприклад, 50 мільйонів полігонів у Edit Poly
під час рендеру займають 31,5 Гб ОЗУ. А ось ті ж 50 мільйонів сконвертовані в Edit Mesh займуть 25.7 Гб ОЗУ" - міш і полі це контейнери для інформації, едіт полі завжди важить більше, за рахунок збільшеного обсягу функціоналу/інформації.Можна перевірити розмір макс файлу, збережіть дерево в едіт полі форматі, і ще варіант в едіт міші і побачите що в меш формат, макс файл важить значно менше і чим складніше об'єкт, тим більше різниця. На якість сітки моделі
формат не впливає жодним чином, хіба тільки у зручності при моделюванні, полі все-таки зручніше і гнучкіше, але після закінчення всіх процедур, можна сміливо в міш назад конвертувати.

"1) Рендер з однією великою текстурою 1 Гб, зажадав 3 Гб ОЗУ
2) Рендер з 10 великими текстурами 1 ГБ, зажадав 21 Гб ОЗУ" - не коректне порівняння. Одна і таже текстура в різних форматах буде мати різну вагу на HDD/SSD але не в оперативній пам'яті. Наприклад JPG завжди менше важить ніж PNG якщо
картинка кольорова, але при цьому в оперативній пам'яті вони займатимуть однаковий розмір, тому що витрата оперативної пам'яті обумовлена ​​не форматом, формат - це контейнер для зберігання даних, не більше, а різна вага в різних
форматах - обумовлений стиском інформації в цих контейнерах, на витрату оперативної пам'яті впливає роздільна здатність, чим більша роздільна здатність текстури - тим вища витрата!
Причому 1 текстура на 10к пікселів, буде робота
повільніше в макс і їсти більше, ніж 10 текстур по 1к пікселів - у сумі це однаковий підсумок за загальним дозволом текстур - але 10 по 1к буде набагато комфортніше в роботі. На швидкість самого рендеру це не впливає, або не значно, а ось на парсинг (завантаження-розвантаження геометрії перед рендерингом) та завантаження в макс – відчутно
Так само на витрату оперативної пам'яті сильно впливає бітність текстури - чим вона вища, тим більша витрата.

"3) Рендер з 10 великими текстурами 1 ГБ, але, в сцені призначено лише один ID, для першої текстури, інші текстури взагалі ніяк не беруть участь у сцені. Тобто, за ідеєю, інші 9 текстур не повинні вантажитися, але вони вантажаться . Знову 21 Гб ОЗУ" - не розумію на що тут ви розраховували. Якщо текстура вже присутня в максі - значить вона вже в оперативної пам'яті!
Все що є в сцені - все це в оперативній пам'яті, не важливо, що з цього ви використовуєте, воно вже там і нікуди не подінеться.
Єдиний варіант економії тут - закрити і відкрити макс, не відкриваючи мат едитора, натиснути рендер, тоді буде задіяно тільки те, що бере участь у рендері, але якщо ви відкриєте мат едитор, макс провантажить вам текстуру для відображення, ви повинні бачити що у вас є, і все, вона в оперативці.
Хоча у випадку з Multi/Sub-Object - є ймовірність, що він завантажить весь стек шейдерів, оскільки можливо що макс
приймає цю вкладку єдиним цілим.

Розділ System.

Натискаючи на функцію System Setting - у нас з'являється додаткове вікно Corona system settings з рядом налаштувань:

System settings

#of threads (0 = unlim.) – можливість використовувати кількість ядер для рендеру.

Якщо ми хочемо використовувати при прорахунку рендеру певну кількість ядер, і цього більше, ніж достатньо, просто вписуємо потрібне число такі, як 1; 5;Якщо виставляти негативні значення -1;-5;-10;-15, то використовуватимуться всі ядра крім кількості, яку ви вказали.
Наприклад, при значенні -2 будуть використовуватися всі ядра, крім двох.


Нотатка:

Зміна значення у використанні кількостей ядер, найчастіше практикується коли ви практично вже знаєте, що відрендерити картинку можливе і менше їх число. Це може зайняти трохи довше, але ви отримаєте можливість працювати далі за комп'ютером.

Також хочу зазначити, що при старті рендеру, може з'явитися вікно - повідомлення, яке буде показувати вам інформацію про вашу загальну кількість ядер та кількість, яку використовує Корона render.

Lock 3ds Max при рендері - Наявність галочки блокує інтерфейс програми на час рендеру. Ця функція дозволяє уникнути будь-яких глюків, збоїв через зміни в сцені під час рендеру. Але також варто врахувати, що ця зміна вплине на інтерактивні налаштування - ви не зможете нічого змінити в сцені.

Enable devel/debug mode - Наявність галочки в даній функції включає додаткові налаштування в розділі Performance.

Interactive rendering

# of threads override можливість використовувати кількість ядер для інтерактивного рендеру. Суть дій аналогічна зі звичайним рендером, що описано мною вище.

Enable material editor - Включає візуалізацію матеріалів в компактному редакторі матеріалів.

Output autosave

Enable autosave - функція включає автоматичне збереження рендеру у форматі .cxr.

Autosave interval - інтервал часу, з яким відбувається автозбереження візуалізації, коли йдеться прорахунок рендера.

On render end - кількість збережених рендер файлів після закінчення рендеру

During render - кількість збережених рендер файлів під час рендеру.


Нотатка:

Тобто якщо On render end у нас вказано 3, то після закінчення рендеру буде 3 рендер-файли формату cxr., збережені з інтервалом 10 хвилин з кінця. Тим самим перезберігаючи по черзі попередні автозбереження. During render буде вказано 5, то на момент рендеру у нас буде 5 рендер-файлів формату cxr., які будуть перезберігатися по черзі кожні 10 хв.

Filename - Це шлях збереження файлу.
…(три крапки) - при натисканні дозволяє вибрати місце (папку), куди хочемо зберігати рендер файл (файли).

Open - при натисканні дозволяє вибрати файл у потрібній папці для збереження.

VFB Settings

Type - тип фреймбуфера, що використовується при рендері.

  • Corona VFB - коронівський фреймбуфер
  • Native 3ds Max VFB - стандартний максовський фреймбуфер (Scaneline)
  • None - не відображати фреймбуфер

Render History and A/B comparison (Історія рендеру та порівняння А та В варіанта рендеру).

Automatic saving on render end - за наявності галочки відбуватиметься автоматичне збереження рендеру в історію після закінчення рендерингу.
Size on HDD (MB) - обмеження максимального розміру папки, де зберігатиметься історія рендерів.


Нотатка:

Внаслідок активної функції Automatic saving on render end, ми отримуємо можливість порівнювати рендер з попередніми рендерами у фрейм буфері, оскільки після закінчення рендеру новий рендер буде робити автозбереження (і ми не забуватимемо зберігати, якщо нам з якоїсь причини це необхідно).

Також за допомогою Store Current VFB ми можемо робити це вручну.

Toolltips

Enable settings tooltips - Наявність галочки активує підказки налаштувань рендеру візуалізації.

Language - дозволяє вибрати мову, якою будуть відображатися підказки. Після активації цього параметра 3Ds Max попросить вас перезапустити програму, щоб активувати зміни

Material editor (редактор матеріалів)

Custom Previews - функція дозволяє покращити чи погіршити якість відображення вікна редактора матеріалу. При зменшенні значення, "куля" (або куб, якщо ви виставили це в налаштуваннях) матеріалу буде більш шумний, при високому значенні - відображення стане якіснішим.


Нотатка:


Варто врахувати, що за завищенні значення функції Custom PreviewsЦе дасть додаткове навантаження на комп'ютер, а також протилежною дією (заниженням значення) ми можемо, хоч і не глобально, але зняти якусь частину навантаження комп'ютера. Ця інформація особливо корисна тим, у кого дуже слабкий комп'ютер, і користувач шукає різні шляхи оптимізації для роботи.

Export scene - функція створена для експорту даних сцени для рендерингу в автономному додатку corona.

Frame Buffer

Clear VFB in between renders - Наявність галочки дозволяє автоматично очистити VFB між рендерами. Тобто кожен новий рендер скидатиметься до чорного рендеру перед кожною візуалізацією. Галочка встановлена ​​автоматично. Краще її зняти, щоб можна було зручніше перерендерювати якісь фрагменти під час використання регіону.

Render stamp - при включеній галочці дозволяє додати інформацію про рендер у правий нижній кут зображення.


Нотатка:

Простіше кажучи, за активної функції Clear VFB in between renders - кожен наступний рендер походить з нульового прорахунку. Найчастіше це походить від чорного екрану та подальшого прорахунку рендер пасів.Якщо цю галочку прибрати, Corona render буде враховувати минулий передпрорахунок, і прораховувати зміни, які відбулися в сцені. Тобто рендер буде починатися з галасливої ​​картинки - трохи швидше.

З вимкненою функцією зручно налаштовувати сцену- так як не потрібно буде витрачати час на передпрорахунки, і буде видно зміни, що відбуваються в сцені.

Image filter (фільтр зображень) - дозволяє використовувати зі списку ряд фільтрів, щоб зробити зображення різкішим або розмити перехід між пікселями.

None - відсутній будь-який вплив фільтрів на рендер (денойзинг відключений).
Tent - стандартний фільтр, який є балансом між різкістю та розмиттям.
Box - дозволяє одержати максимальну розмитість рендера.
Symetric Tent - варіант фільтра Tent з великим діагональним розмиттям.
Parabolic - другий після фільтра Box за розмитістю рендера.
Hann - низьке діагональне розмиття
Blacksman - Harris - дозволяє одержати максимальну різкість.


Нотатка:

Так як результат рендеру залежить від поетапності роботи. Тобто, наприклад фінальний результат краще прораховувати без денойзингу, але довше за часом. які були допущені або їх неможливість розв'язання.

Width - керує силою блюру (розмиття).Великі значення дають розмитий рендер з меншою деталізацією, а значення менше - збільшують різкість рендеру, але з великою кількістю шуму або ймовірністю отримати ряд "артефактів" на рендері.

Нотатка:

Приклад значення Tent Width 3;2;1

З першого погляду різниці не помітно, але якщо придивитися, то там, де стоїть значення 1 шум більш чіткіший, ніж при значенні 2 і 3, більш розмито. Якщо значення 3 замінити на 5 - ми отримаємо гладкі деталі.

Найкраще, якщо вам непомітна різниця, то зробіть три рендери з різним значенням і подивіться різницю через History Frame VFB чи Photoshop.

Highlight clamping - блокує всі семпли до їх запису до вказаного в цій функції значення.

Нотатка:


Highlight clamping дозволяє позбавитися світлячків, шуму і дозволить поліпшити згладжування навколо яскравих країв. Високі значення обрізають відблиски. Значення може бути 1-3-5. Все залежить від налаштувань сцени.

Distributed Rendering - ця функція спрямована на мережевий рендер для розподілу часу та навантаження рендеру на інші комп'ютери, які підключені до мережі. Посидівши, вивчивши функціонал, я зрозуміла, що не так все просто на перший погляд, як здається. Тому що є низка різних ситуацій, які впливають на ті чи інші речі. Тому відкладу цей розділ окремої статті. Плюс, варто розібратися за різних умов, погравшись з налаштуваннями рендера, щоб прийти до робочої схеми роботи з даною функцією.

Опис. Налаштування рендерів у Corona.

General Settings - має в наявності чималий різнобічний функціонал, який можна поділити на умовні групи:

Технічний функціонал:

Show VFB - при натисканні на кнопку показує останній кадр (картинку), яка прораховувалася (рендерувалася) в буфері.
Start Interactive - запускає інтерактивне вікно рендеру Corona render (Corona VFB).

ЗАМІТКА:

Інтерактивний рендер також можна запускати за допомогою додаткової панелі, вибравши Start interactive rendering in Corona VFB.

Також можна додати, що інтерактивний рендер можна відкрити в одному вікні з проекцій:

- За допомогою додаткової панелі, вибравши Start interactive rendering in active Viewport;

-У потрібному Вам вікні проекції натискаємо лівою клавішею миші (ЛКМ) на назву вікна проекції; у списку вибираємо Extended Viewports; і далі вибираємо Corona Interactive.

Setup LightMix

Функція з'явилася Corona render, починаючи з версії 1.5, а з версії 1.6 - отримала оновлення і додатковий функціонал, який ми можемо простежити в наступних налаштуваннях:

Setup LightMix - при включенні цієї функції, у користувача з'являється можливість робити різні маніпуляції з джерелами світла в самому Corona VFB або Interactive render - у процесі рендеру або після закінчення рендеру. Наприклад:

  • відключати або вмикати джерела світла;
  • змінювати інтенсивність джерел світла;
  • змінювати колір джерел світла;
  • створювати Render Elements світла від кожного джерела світла;

Таким чином за один, але досить тривалий прорахунок рендеру, у вас є можливість створити картинку з різним освітленням інтер'єру, починаючи від ранкового, закінчуючи нічним.

Натискаючи на Setup LightMix, з'являється нова панель:

Instanced Lights (примірники світла) - на основі екземплярів;

Grouped Lights (згруповане світло) - на основі груп;

Individual Lights (Індивідуальне світло) - на основі окремих джерел світла (Але знайте, що цей метод забирає найбільше оперативної пам'яті при прорахунку);

Add hidden lights(Додати приховане світло) - наявність галочки додає приховані джерела світла.

Included in denoising - (Включено в шумозаглушення) - наявність галочки у даної функції дає можливість автоматично включити шумопридушення для всіх джерел світла зі списку LightMix.

Інформація "Result" - каже нам про те, скільки ОЗУ використовуватиметься на кожен LightMix шар.

А інформація червоним у самому низу, нас попереджає “Existing LightSelect layers will deleted(Існуючі шари вибраного світла будуть видалені). Тобто при кожній генерації LightMix - минула генерація буде замінена (видалена) - навіть якщо це перша.

Нотатка:

Додам відразу про LightMix Corona VFB: Наявність або відсутність галочки дає можливість:

1.Включати або відключати це джерело світла;

2. Змінювати назву самого джерела світла

3.Змінювати інтенсивності джерела світла;

4.Змінювати кольори джерела світла;

Scene - після закінчення налаштування джерел світла в LightMix, дана кнопка дозволяє при її натисканні перенести виконані нами налаштування - самі джерела світла.

Save. /Load - дозволяє зберегти, а також по необхідності, підвантажити зроблені користувачем налаштування LightMIx для цієї картинки;

Toggle all - відключає або включає всі джерела світла зі списку;

All 1.0 - обнулює параметри інтенсивності всіх джерел світла в LightMix, повертаючи значення до 1.0

All white - повертає всі кольори джерел світла зі списку до білого кольору;

Open material library corona render

Ця функція з'явилася з версії 1.7 як частина інсталяційного пакета. Вона завантажується автоматично під час встановлення, або її можна встановити вручну в автономному режимі.
Ця функція надає можливість використовувати бібліотеку готових матеріалів.

Нотатка:

Якщо коротко і по-чесному, то ця функція більше призначена для новачків, оскільки налаштовані матеріали не ідеальні, та й під кожне завдання не напасешся матеріалами. Якщо ви грамотно підходить до справи, то завжди треба буде якийсь параметр доопрацювати, але для початку, як заготовки, такі матеріали зійдуть.

Щоб скористатися функцією Open material library – натискаємо на цю кнопку, і у нас з'являється нове вікно з матеріалами.

І, щоб скористатися матеріалом, ми перетягуємо вибраний нами матеріал у будь-який із слотів Material Editor або його розгорнутий аналог.

Або ви можете клацнути правою кнопкою миші і вибрати Assign to selected objects. Застосувати матеріал до вибраних вами заздалегідь у сцені елементів.

Детальнішу інформацію можна знайти на сайті Corona render.

Reset setting (скинути налаштування) - дозволяє скинути всі параметри за замовчуванням (до стандартних налаштувань).

Progressive rendering limits (Ліміти прогресивного рендеру)) - це режим рендеру в програмі, який поступово оновлює наше зображення (рендер) з низької якості до кінцевого результату. Він залежить від заданих нами параметрів у налаштуваннях. Так як у стандартних налаштуваннях Corona render – він нескінченний. Що означає, що якщо ви самі не поставите ліміт закінчення рендеру, він буде продовжувати прорахунок. поки ви не натиснете Cancel або Stop.

Суть прогресивного рендерингу в тому, щоб ми могли бачити в процесі змін результат, не перерендерюючи раз-по-раз зображення, або намагаючись вгадати потрібні дії, щоб уникнути непотрібних зайвих прорахунків в цілому або частково зображення.

Повторюся, оскільки в налаштуваннях за умовчанням рендер нескінченний, існує кілька способів обмеження рендерингу:

Pass limit - Працює на основі кількості пасів (проходів). Даною функцією ми вказуємо короні зупинити рендер після вказаної кількості пасів.
Наприклад, ми поставимо кількість Pass limit 5-натискаємо рендер.

І в Corona VFB у розділі Stats ми вже бачимо Passes total, який каже, що вже пройдено 4 з 5 пасів рендеру (4/5), та по закінченню 5 проходу, рендер зупиниться.

Сказати точну кількість пасів для безшумної сцени дуже складно, це залежить від самої сцени, складності матеріалів, світла та ефектів.
Тобто для якоїсь сцени це може бути десь і 30, десь і 50, а десь і за 150 пасів.

Noise level limit - Працює на основі кількості шуму.
Виставляючи відсоток (%) необхідного нам шуму, програма рендерит доти, доки досягне потрібного результату.

Допустимо, нам треба 2% шуму в картинці. Ми виставляємо число 2 в Noise level limit та натискаємо рендер.

І в Corona VFB у розділі Stats ми бачимо Noise level (target) - кількість шуму на даний момент рендеру та необхідна кількість шуму, яку ми вказали. І програма, досягнувши 2% шуму, сама зупинить рендер.

Оновлення % шуму у зображенні прораховується кожні 5 проходів (Це за стандартними налаштуваннями, але ця функція може редагуватися).

Time limit – працює на основі ліміту часу. Тут ми можемо виставити потрібну кількість часу і рендер зупинитися після його закінчення.
Виставляти час ми можемо у годинах, хвилинах та секундах.

Нотатка:

Pass limit - особисто мені незручний при створенні інтер'єрів, тому що ми не можемо вгадати скільки проходів нам треба, щоб отримати потрібну чисту картинку. Так як прості матеріали програма може прорахувати і за ті ж 32 проходи, але, наприклад, на складному склі, цієї кількості прорахунку може і не вистачити. Або ситуація навпаки, ми ставимо 150 проходів, але насправді програмі вистачило б і значення 100, і останні 50 проходів стануть вам витраченим дарма часом, а це може зайняти і 15-30-60 хв (залежно від комп'ютера).

Time limit - Зручний у тому випадку, коли ваш робочий час обмежено якимись тимчасовими рамками, і якість картинки стоїть не на першому місці. Наприклад, вам потрібно надати замовнику ті ж таки чернові рендери або прийняття рішення. Тому наш час розбили на кількість рендерів і по закінченню часу здали зображення.

Noise level limit - більш виправданий у використанні, тому що ми розуміємо, що нам достатньо 2-3-5% шуму для картинки. Ми виставили потрібний ліміт і на виході отримали те, що запитували, не дивлячись час від часу, як це могло бути у Pass limit. І витрачений час на зображення дорівнює % шуму у зображенні.

Save/Resume rendering (зберегти/відновити рендер) - Використовуючи цю функцію ми можемо зупинити рендер, і продовжити її пізніше, з того моменту, де зупинили.

Save CXR - Зберігає файл у форматі .cxr. Коронівський формат дозволяє потім підвантажити рендер файл і продовжити рендер. (Мінус у тому, що займає велику кількість пам'яті на вашому комп'ютері).

Resume from file… - при натисканні на цю кнопку ми отримуємо можливість підвантажити наш збережений .cxr файл і продовжити рендер з того місця, на якому зупинилися.

Resume last render - Якщо ви просто зупинили рендер, і хочете знову продовжити його, то натискаємо на дану кнопку і рендер продовжує прорахунок.


Нотатка:

Відмінність між Save CXR та Resume last render у тому, що функція Save CXR - дозволяє продовжити рендер через будь-який час. Не має значення, через годину, через тиждень чи рік. Так як ми перед закриттям файлу, спочатку зберегли його в форматі .cxr і закрили.

ВАЖЛИВО! Перед завантаженням картинки в форматі CXR, виставити її точні розміри у вкладці Common.

А функція Resume last render - дозволяє нам продовжити рендер у випадку, якщо ви не закривали файл. Наприклад, рендерили, і з якоїсь причини треба було зупинити – зупинили та продовжили одразу рендер. Так як не зберігши у форматі .cxr ми просто втрачаємо історію рендеру у разі закриття програми, відключення комп'ютера, або інших дій.

Також варто зауважити, що дана функція працюватиме лише з форматом .cxr (інакше називається ще Corona EXR image (cxr))

Наступний підсвіток це Render overrides (перезапис рендеру)

Розглянемо його функції:

Render hidden light - при включенні цієї опції, 3DsMax прораховує заховані нами джерела світла (відключені у шарах – layers).

Render only mask (disable shading) (рендерит тільки маски) - при включеній функції, буде рендерувати лише допоміжні Render Elementsякі не залежать від основного Render Elements (Beauty).

Наприклад, це будуть такі Render Elements, як:


Нотатка:

Ця функція дозволяє без витрати часу перерендерувати виключно рендер-елементи для подальшої роботи з ними. Так як при простому прорахунку у нас йшло б більше часу, тому що комп'ютер прораховуватиме і б'яти пас.

Mtl.override - Опція перезапису матеріалу. При включенні цієї функції до всіх об'єктів у сцені використовується матеріал, який ми внесли навпаки.

Наприклад, у вікно навпроти Mtl.override додаю стандартний корона матеріал сірого кольору:

Ця функція часто використовується для економії часу, для можливості швидкого побудови освітлення в сцені, оскільки програма не прораховує складні параметри різних матеріалів.

list Exclude/Include object - дозволяє виключити чи включити будь-які об'єкти у функцію Mtl.override. Це можна зробити, вибравши елемент і натиснувши + , або зайти object excluded і вибрати потрібні об'єкти.

Наприклад, я внесла елементи квітки до списку винятків, і, як результат, вся сцена сіра, а у моделі квітки залишилися заздалегідь налаштовані матеріали.

Preserve

- при натисканні на цю кнопку у нас спливає додаткове вікно, де ми можемо вже не вручну, а автоматично виключати або вмикати об'єкти, вибираючи з цього списку. Що дозволяє те ж налаштування освітлення зробити зручнішим.

Denoising - Функція дозволяє знизити або виключити шум на нашому рендері, що дозволяє зменшити кількість пасів або часу рендеру. Але не варто переборщувати, тому що при високих значеннях ми можемо втратити дрібні деталі на зображенні, втратити реалістичність. Або отримати помітні зміни.

Також залежно від режимів користувача з'являється можливість використовувати кілька додаткових параметрів:

Denoise Amount - Ця функція спрямована на змішування пікселів між собою для позбавлення від непотрібних шумів або артефактів на зображенні. Стандартне значення 0,65 – дає хороший баланс між шумом та деталями.Але ніхто не забороняє грати з цим значенням для налаштування допустимої якості для рендеру.

  • збільшення - може допомогти у зменшення шуму, але ціною можливості втрати деталей.
  • зменшення - навпаки, запобігає втраті дрібних деталей, але дає більш гучний рендер.


Нотатка:


Також хочеться відзначити, що в Render Elements - є оригінальний Beauty (CShading_Beauty) pass, який використовує оригінальні налаштування з Corona VFB. І в налаштуваннях цього Render Element ми можемо виставляти кількість Denoising.

Розділ Denoising має кілька режимів:

None - Denoising вимкнено.

Тільки firefly removal - цей режим денойзингу, спрямований видалення лише деяких світлячків в рендері (яскравих пікселів).
У цьому режимі функція Denoise Radius - Недоступна.

Fast preview (NVIDIA) - призначений для швидкого перегляду без шуму в інтерактивному або звичайному рендері.

Варто врахувати, що для його роботи буде потрібно графічний процесор.


Нотатка:

Також можна відзначити деякий ряд його плюсів та мінусів:

— Працює виключно на GPU;

- Використовує AI для розумного розмиття шуму та для отримання деталей;

- Використовується найчастіше для інтерактивного рендеру для швидкого перегляду;

— Не варто використати для анімацій, фінального рендеру. Так як у випадку з анімацією можуть бути артефакти та мерехтіння;

— Немає додаткових режимів. А точніше Denoise Amount працює, а використання Denoise Radius закрито.

  • High quality - призначений для створення високоякісного зображення та анімації. Його пріоритетом є те, що він не створює плям і зберігає при цьому різкість країв та деталі.

Даний тип денойзингу часто часто використовується.

  • Gather data for later- цей режим спрямований для використання даних на потім (для подальшого використання). Він дозволяє пізніше видаляти шум із рендеру в редакторі Corona за допомогою Corona High Quality.

Нотатка:

Ми можемо зберегти рендер у форматі CXR - після завантажити в Corona VFB - після натиснути Denoise у редакторі корони. І далі ми можемо змінювати режими денойзингу (Custom denoise). Ми можемо змінити Denoise Amount або Denoise Radius.

Наступний підсвіт - це Render selection (Отрендерити виділене) - ця функція дозволяє рендерувати обрану нами у в'юпорті одну або кілька моделей, і так само відрендерувати їх за допомогою інших функцій.

Disabled - функцію вимкнено
Include/Exclude list - рендер об'єктів за рахунок виключення або включення до цієї функції будь-яких об'єктів зі сцени.

Viewport Selection - Рендер обраного нами об'єкта у в'юпорті.

Object GBuffer ID - рендерит об'єкти, які мають даний Object ID


Наступний сувій налаштувань - це Scene Environment.

Його функції спрямовані до роботи з оточенням сцени.

Use 3ds Max setting (Environment tab) - дозволяє використовувати в налаштуваннях 3ds Max стандартні налаштування з вкладки Environment, яку можна знайти, перейшовши до головного меню навести на Rendering та вибрати зі списку Environment або натиснути гарячу клавішу 8.

Use Corona - Використовує налаштування Corona render в оточенні.


Нотатка:

За допомогою цих функцій ми можемо налаштовувати колір оточення (сцени), можемо використовувати різні карти, зображення HDRI для глобального освітлення або фону і так далі.

Також є такі функції як:

  • Direct visibility override - Відповідає за пряму видимість при рендері.
  • Reflections override - Відповідає за відображення на об'єктах.Тобто ми можемо поставити зовсім іншу картинку, яку ми б хотіли бачити на поверхнях, що відбивають. Наприклад, при створенні екстер'єру заднє тло може бути одним, а на стеклах може бути зовсім інше зображення.
  • Refractions override- Відповідає за відображення в заломленні об'єктів.
  • Global volume override - дозволяє імітувати ефекти об'ємного світла (наприклад, туману)


Нотатка:


При включенні даних функцій, ми можемо обходитися тільки змінами кольору, або в допустимих поряд слоті використовувати різновид карт, зображень або HDRI. Для отримання необхідного світла, відображення, наявності того чи іншого фону, вставляючи потрібне нам зображення.

Подібні статті

Останні статті

Категорії