Меню

Настройка шейдеров в corona



Настройка шейдеров в corona

Corona имеет простую, и вместе с тем изящную систему настроек материалов. В данном уроке рассмотрим ряд примеров базовых материалов, которые пригодятся в интерьероной визуализации и не только.

Для теста материалов будем использовать простейшую сцену с дополненным HDRI-освещением.

Создадим новый файл в 3Ds Max. Нажмём f10 (настройки рендеринга). Сразу сделаем базовые настройки:

  1. На вкладке Common в самом нижнем (по умолчанию) свитке Assign Renderer щелкаем на плюсик в строке Production и назначаем в качестве рендерера Corona.
  2. Во вкладке Common — свиток Common Parameters — укажем размеры выходной картинки. В нашем случае разрешение 1200 на 1200 пикселей будет достаточным для того, чтобы рассмотреть любые особенности материала.
  3. На вкладке Scene ограничим Pass Limit (количество проходов рендеринга) числом 12, а так же включим Denoise Mod (режим устранения шумов рендера) в позицию Full Denoising с параметром Amount 0,9

В центре сцены размещен стандартный тестовый объект, т.н. «яйцо». Вы можете смоделировать нечто подобное самостоятельно либо использовать вообще любой набор геометрических тел. В случае с «яйцом» важно лишь то, что любой материал мы будем видеть как на прямых, так и на гнутых поверхностях, под всевозможными углами. А значит сможем адекватно оценивать изменяемые оптические свойства.

В сцену также был размещен источник света типа Corona Light с приведенными на иллюстрации ниже параметрами (изменения отмечены красным цветом). Как видим, это плоский односторонний «диск», таргетированный на тестовом объекте. Дистанция от источника света до тарджета и радиус диска взяты произвольно, интенсивность (=3) и направленность (Directionaliti = 0,61) выбраны опытным путем, но так, чтобы свет в основном попадал всё же именно на «яйцо». Кроме того в настройках видимости Visibility сняты все галки кроме последней — просто для экономии ресурса, а так же для того, чтобы не создавать на тестируемом материале лишних бликов.

Наконец, настроим окружение. Нажимаем на клавиатуре 8 — появляется окно Environment end Effects (окружение и эффекты). В строке Background (фон) кликаем по кнопке с надписью None — появляется браузер материалов и карт. Выбираем карту Bitmap — откроется автоматическое окно проводника. Думаю, Вы уже знакомы с практикой создания окружения на основе сверических панорамных снимков HDRI. В нашем случае мы можем выбрать любую по своему вкусу сферическую панораму с расширением файла .hdr или .exr

Сферические панорамы Вы можете приобрести на соответствующих фотостоках или бесплатно скачать на таких ресурсах, как junior3d.ru или 3dmir.ru.

Откроем редактор материалов (горячая клавиша m). В этом уроке я буду по-преимуществу использовать Slate-модель, как более явно показывающую последовательные взаимосвязи процедурных карт и их воздействий. В принципе, те же настройки можно делать и в классической, «компактной» модели редактора материалов.

Итак, а поле редактора материалов перетаскиваем нашу bitmap-карту окружения из слота Background. Соглашаемся на условие Instance (взаимо-зависимо). Теперь мы можем настраивать карту окружения в редакторе, и изменения будут наследоваться окружающим пространством.

Двойным кликом выделяем панельку битовой карты — справа появятся настройки, где поменять нужно всего два пункта — чекбокс Environ (окружение) и тип — Spherical Environment

При желании Вы можете более подробно рассмотреть Вашу карту hdri стандартным способом — кликнув в параметрахбитмапа по кнопке View Image

Теперь создадим первый тестовый материал. Даже если Вы еще не знакомы со слейт-моделью и ранее работали только в «крассическом» редакторе материалов, это не составит труда. Просто делаем правый клик в поле редактора, выбираем в контекстном меню последовательно: Material — Corona — CoronaMtl

Сам материал в компактном виде Вы увидите в поле, а его базовые настройки (посде двойного клика) станут видны в параметрическом поле справа — они не отличаются от таких же в «компактной» модели. Более того, здесь же будут появляться и натсройки процедурных карт или под-материалов, которые мы будем создавать в дальнейшем.

Обратите внимание, что в данной тестовой сцене внутри «яйца» находится т.н. «core» (ядро) с другим, глянцево-черным материалом и лого Corona Render. Такой элемент можно использовать для большего контраста картинки. К тому же он поможет оценить и качества прозрачных, преломляющих материалов. В принципе, «core» мог бы быть и матово-черным, и клетчатым, и нейтрально серым либо пятицветным — по Вашему выбору.

Назначьте материал Вашему тестовому объекту, после чего нажмите Shift_Q , таким образом откроется Frame Buffer и запустится рендер.

Как видим, картинка достаточно яркая и контрастная, но в ней может присутствовать «зернистость», то есть шум. Как правило, он появляется на коротких рендерах на этапе просчета света и тени. Да и на длительных, подробных просчетах сцен он возникает практически неизбежно и без специфических настроек не исчезает сам собой.

Благо в Corona мы можем сделать картинку гладкой даже в тех упрощенных настройках, которые даны в этой сцене. Для этого еще раз вызовем настройки рендера (f10) и перейдём на вкладку Render Elements.

Кликаем по кнопке Add. (добавить) и в появившемся списке выбираем элемент CSading_LightSelect.

Этот элемент позволяет регулировать эффекты от светильников (или их групп) поштучно.

В нашей сцене всего два источника света — HDRI-окружение и нацеленный корона-лайт. Таким образом добавим два элемента. Для удобства им можно менять имена — первый будет относиться к корона-лайту, в данной сцене он переименован как Lf (light fake). Второй отвечает за окружение и кратко переименован в env.

Выделите первый CSading_LightSelect (Lf) и внизу плюсиком или пиктограммой [. ] сопоставьте ему источник света (в данной сцене он носит имя 0_fakelight). Очень важно — сразу же поставьте под списком сопоставленных элементу светильников галку в чекбоксе Apply Denoising Also to this render element!

Читайте также:  Зайти в настройки мегафон 4g

Для второго элемента никаких источников света назначать не требуется, достаточно просто поставить оба чекбокса под нижним списком.

После этих изменений можете закрыть настройки и запустить рендер. Картинка примерно такой гладкости должна получиться у Вас:

В следующем уроке мы создадим простые отражающие материалы — хром, алюминий, сталь.

Источник

Scene. Настройки рендера в Corona.

Всем привет! Я решила, почему бы не разобрать функции настроек Corona Render, и потому решила сделать серию статей, направленных на ознакомление, а может и изучение, или как для заметок: “Информация о функциях настройки corona render”.

В данных статьях постараюсь человеческим языком описать каждую кнопку, настройку, что есть в Сorona render. И хоть данный рендер движок не избыточен на вкладки, кнопки, количество настроек, как например в Vray, но и у Corona Render своего функционала достаточно, что в свою очередь не дает возможности вложиться всего на пару страниц, да и как оказалось, поговорить много есть о чем.

Итак, в этой статье мы постараемся рассмотреть весь функционал раздела “Scene” в настройках рендера.

Раздел “Scene” имеет следующий список свитков

  1. General Settings (Общие настройки).
  2. Scene Environment (“Настройки” сцены окружения).

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.

Суть прогрессивного рендеринга в том, чтобы мы могли видеть в процессе изменений результат, не перерендеривая раз за разом изображение, или пытаясь угадать нужные действия, чтобы избежать ненужных лишних просчетов в целом или частично изображения.

Читайте также:  Настройки блокпост рс 3300

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

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 добавляю стандартный корона материал серого цвета:

Читайте также:  Настройки про игроков cs go прицел

Это функция часто используется для экономии времени, для возможности быстрого построения освещения в сцене, так как программа не просчитывает сложные настройки различных материалов.

list Exclude/Include object — позволяет исключить или включить любые объекты в функцию Mtl.override. Это можно сделать выбрав элемент и нажать на + , или зайти object excluded и выбрать нужные объекты.

Например, я внесла элементы цветка в список исключений, и как результат, вся сцена серая, а у модели цветка остались настроенные заранее материалы.

Preserve

— при нажатии на данную кнопку у нас всплывает дополнительное окно, где мы можем уже не вручную, а автоматически исключать или включать объекты, выбирая из данного списка. Что позволяет ту же настройку освещения сделать более удобной.

Denoising — функция позволяет снизить или исключить шум на нашем рендере, что позволяет уменьшить количество пассов или времени рендера. Но не стоит перебарщивать, так как при высоких значениях мы можем потерять мелкие детали на изображении, потерять реалистичность. Или получить заметные изменения.

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

Denoise Amount — эта функция направлена на смешивание пикселей между собой для избавления от ненужных шумов или артефактов на изображении. Стандартное значение 0,65 — дает хороший баланс между шумом и деталями. Но никто не запрещает играться с этим значением для настройки допустимого качества для рендера.

Denoise Radius — это радиус размытия (blurring filter). Стандартное значение 1.0.

  • увеличение — может помочь в уменьшение шума, но ценой возможности потери деталей.
  • уменьшение — наоборот, предотвращает потерю мелких деталей, но даёт более шумный рендер.

Заметка:


Также хочется отметить, что в Render Elements — есть оригинальный Beauty (CShading_Beauty) pass, который использует оригинальные настройки из Corona VFB. И в настройках данного Render Element мы можем выставлять количество Denoising.

Раздел Denoising имеет несколько режимов:

None — Denoising отключен.

Only 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. Для получения необходимого света, отражения, наличия того или другого фона вставляя нужное нам изображение.

Источник

Adblock
detector