Сэмплирование (sampling)#
Ссылка
- Панель:
Интегратор – это алгоритм рендеринга, используемый для расчёта освещения. Cycles в настоящее время поддерживает интегратор трассировки пути с прямым сэмплированием света. Он хорошо работает для различных настроек освещения, но не подходит для каустики и некоторых других комплексных ситуаций освещения.
Лучи отслеживаются от камеры до сцены, отражаясь повсюду, пока они не находят источник света, такой как светильник, объект, излучающий свет, или мировой фон. Чтобы найти источники света и поверхности, излучающие свет, используются как непрямое сэмплирование света (позволяющий лучу следовать за поверхностью BSDF), так и прямое сэмплирование света (выбор источника света и отслеживание луча к нему).
- Сэмплов во вьюпорте (viewport samples)
Количество сэмплов для рендеринга вьюпорта. Установка этого значения на ноль включает неограниченное сэмплиование вьюпорта.
- Сэмплов при рендере (render samples)
Количество путей для трассировки каждого пикселя в финальном рендере. По мере увеличения сэмплов отладка становится менее шумной и более точной.
- Ограничение времени (time limit)
Рендеринг сцены до тех пор, пока не будет достигнут лимит времени или количество сэмплов. Когда время установлено на 0, счётчик сэмплов используется для определения момента остановки рендеринга.
Примечание
Ограничение по времени не включает время предварительной обработки, а только время самого рендеринга.
Адаптивное сэмплирование (adaptive sampling)#
С помощью адаптивного сэмплирования Cycles автоматически уменьшает количество сэмплов в областях с небольшим шумом, что ускоряет рендеринг и обеспечивает более равномерное распределение шума. Например, для волос персонажа может потребоваться много сэмплов, а для фона – наоборот.
С помощью адаптивного сэмплинга также можно визуализировать изображения с заданным количеством шума. Это делается путём настройки «порога шума», типичные значения находятся в диапазоне от 0.1 до 0.001. Затем для сэмплов рендеринга можно установить высокое значение, и средство рендеринга автоматически выберет подходящее количество сэмплов.
- Порог шума (noise threshold)
Порог ошибки для принятия решения о продолжении сэмплирования пикселей. Типичные значения находятся в диапазоне от 0.1 до 0.001, при этом более низкие значения означают меньше шума. Установка значения ровно на 0 позволяет Cycles автоматически подобрать для него значение на основе общего количества сэмплов.
- Минимум сэмплов (min samples)
Минимальное количество сэмплов, которые получает пиксель перед применением адаптивного сэмплирования. Если установлено значение 0 (по умолчанию), автоматически устанавливается значение, определяемое порогом шума.
Шумоподавление (denoising)#
Функция шумоподавления удаляет шум при предварительном просмотре сцен в режиме «рендера» в 3D-вьюпорте или при окончательном рендеринге.
- Рендеринг (render)
Шумоподавление для окончательного рендеринга можно включать или отключать с помощью этого флажка. Для шумоподавления изображения после рендеринга с помощью ноды шумоподавления – проходы данных рендеринга также адаптируются к выбранному шумоподавителю.
- OpenImageDenoise:
Использует Open Image Denoise от Intel, шумоподавитель ИИ. Как правило, обеспечивает самое высокое качество и используется по умолчанию.
- OptiX:
Использует шумоподавитель ИИ OptiX от NVIDIA. Поддерживает ускорение GPU на некоторых старых графических процессорах NVIDIA, где OpenImageDenoise не поддерживается.
Доступно только на графических процессорах NVIDIA при настройке во вкладке «устройства рендера Cycles» в пользовательских «настройках».
- Вьюпорт (viewport)
Шумоподавление для режима «рендера» в 3D-вьюпорте можно включить или отключить с помощью этого флажка.
- Автоматически (automatic):
Использует шумоподавление с ускорением GPU, если оно поддерживается, для достижения наилучшей производительности. Предпочтительно OpenImageDenoise вместо OptiX.
- OpenImageDenoise:
Использует Open Image Denoise от Intel, шумоподавитель ИИ. Как правило, обеспечивает высочайшее качество.
- OptiX:
Использует шумоподавитель ИИ OptiX от NVIDIA. Поддерживает ускорение GPU на некоторых старых графических процессорах NVIDIA, где OpenImageDenoise не поддерживается.
Доступно только на графических процессорах NVIDIA при настройке во вкладке «устройства рендера Cycles» в пользовательских «настройках».
- Проходы (passes)
Указывает, какой проход рендеринга должен использовать шумоподавитель в качестве входных данных, что может оказывать различное воздействие на изображение с шумоподавлением. Как правило, чем больше проходов должен выполнить шумоподавитель, тем лучше результат. Рекомендуется как минимум использовать «альбедо», поскольку параметр «нет» может размыть детали, особенно при меньшем количестве сэмплов.
- Нет (none):
Уменьшает шум изображения, используя данные о цвете.
- Альбедо (albedo):
Уменьшает шум изображения, используя данные о цвете и альбедо.
- Альбедо + Нормали (albedo + normal):
Уменьшает шум изображения, используя данные прохода цвета, альбедо и нормалей.
- Предварительный фильтр (prefilter) OpenImageDenoise
Определяет, применяется ли предварительная фильтрация к входным проходам для использования при шумоподавлении. Виден только при использовании OpenImageDenoise.
- Нет (none):
Не применяет предварительную фильтрацию к входным проходам. Этот вариант сохраняет наибольшую детализацию и является самым быстрым, но предполагает, что входные проходы свободны от шума, что может потребовать большого количества сэмплов. Если входные проходы не свободны от шума – шум останется в изображении после шумоподавления.
- Быстро (fast):
Предполагается, что входные проходы не являются свободными от шума, пока к ним не применяется предварительная фильтрация. Этот вариант работает быстрее, чем настройка «точно», но даёт более размытый результат.
- Точно (accurate):
Предварительно фильтрует входные проходы перед шумоподавлением, чтобы уменьшить шум. Этот вариант обычно даёт более детальные результаты, чем настройка «быстро», с увеличенным временем обработки.
- Качество (quality) OpenImageDenoise
Общее качество шумоподавления. Видно только при использовании OpenImageDenoise.
- Высокое (high):
Обеспечивает высочайшее качество вывода за счёт продолжительности по времени.
- Баланс (balanced):
Баланс между производительностью и качеством.
- Быстро (fast):
Обеспечивает быстрый вывод за счёт качества (идеально подходит для рендеринга во вьюпорте).
- Стартовый сэмпл (start sample)
Сэмпл для начала шумоподавления в 3D-вьюпорте.
- Использовать GPU (use GPU)
Выполните шумоподавление на графическом процессоре. Это значительно быстрее, чем на процессоре, но требует дополнительной памяти GPU. Если для больших сцен требуется больше памяти графического процессора, эту опцию можно отключить.
См. «рендеринг с GPU» для получения подробной информации о поддерживаемом графическом процессоре.
Наведение путей (path guiding)#
Наведение путей помогает снизить шум в сценах, где поиск пути к свету при обычном отслеживании пути – сложен, например, когда комната освещена через небольшой дверной проём. Важные направления света со временем изучаются и улучшаются по мере взятия большего количества сэмплов. Наведение поддерживается для поверхностей с диффузными BSDF и объёмов с изотропным и анизотропным рассеянием.
Примечание
Наведение путей доступно только при рендеринге на процессоре (CPU).
Хотя наведение путей помогает визуализировать каустику в некоторых сценах, оно не предназначено для комплексной каустики, поскольку её труднее изучить и ею трудно управлять.
- Сэмплы для обучения (training samples)
Максимальное количество сэмплов, используемых для обучения. Значение 0 будет продолжать обучение до конца рендеринга. Обычно для точного наведения достаточно от 128 до 256 обучающихся сэмплов. Более высокие значения могут привести к незначительному повышению качества наведения, но с увеличением времени рендеринга.
- Поверхность (surface)
Включите наведение путей для диффузных и глянцевых компонентов поверхностей.
- Объём (volume)
Включить наведение путей внутри объёмов.
Источники освещения (lights)#
- Древо освещения (light tree)
Использовать древо освещения для более эффективного сэмплирования источников света в сцене с учётом расстояния и предполагаемой интенсивности. Это может значительно снизить шум за счёт увеличения времени рендеринга каждого сэмпла.
Некоторые свойства освещения не учитываются в древе освещения. Сюда входят настраиваемое затухание, видимость лучей и комплексные настройки нод шейдера, включая текстуры. Это может привести к увеличению шума в некоторых сценах, в которых используются эти функции.
Обратите внимание, что эта функция в настоящее время отключена для графических процессоров AMD в macOS.
- Порог яркости (light threshold)
Вероятное прекращение сэмплинга освещения, когда вклад света ниже этого порога (больше шума, но быстрее рендеринг). Ноль – отключает тест и никогда не игнорирует свет. Это полезно, поскольку в больших сценах со многими источниками света – некоторые источники освещения могут внести лишь небольшой вклад в итоговое изображение и увеличить время рендеринга. Использование этого параметра может уменьшить время рендеринга, необходимое для расчёта лучей, что в конечном итоге оказывает очень незначительное влияние на изображение.
Дополнительно (advanced)#
- Шаблон (pattern)
Шаблон случайного сэмплирования, используемый интегратором.
- Автоматически (automatic):
Использует «Blue-Noise» (см. ниже), но для рендеринга вьюпорта он оптимизирует качество первого сэмпла для интерактивного предварительного просмотра.
- Классический (classic):
Использует заранее рассчитанные таблицы Соболя, зашифрованные по Оуэну, для случайного сэмплирования.
- Blue-Noise:
Использовать шаблон синего шума, который оптимизирует частотное распределение шума для случайного сэмплирования. В результате выходной сигнал выглядит более плавным, хотя в целом он не менее шумный.
- Вариация (seed)
Вариативное значение для интегратора, чтобы получить различные шаблоны шума.
- Использовать анимированную вариацию (иконка часов)
Изменяет вариацию для каждого кадра. Рекомендуется включить эту функцию при рендеринге анимации, поскольку меняющийся рисунок шума менее заметен.
- Смещение сэмплов (sample offset)
Количество сэмплов, которые нужно пропустить при запуске рендеринга. Это можно использовать для распределения рендеринга на несколько компьютеров, а затем объединения изображений с помощью
bpy.ops.cycles.merge_images
- Расстояние скремблирования (scrambling distance)
Эти свойства несовместимы с шаблонами сэмплирования «Blue-Noise».
- Автоматически (automatic)
Использует формулу для адаптации силы расстояния скремблирования на основе количества сэмплов.
- Вьюпорт (viewport)
Использует значение расстояния скремблирования для рендеринга вьюпорта. Это ускорит рендеринг, но может вызвать мерцание.
- Множитель (multiplier)
Более низкие значения уменьшат рандомизацию между пикселями, чтобы улучшить производительность рендеринга графического процессора, за счёт возможных артефактов рендеринга – если установлено слишком низкое значение.
- Минимально отскоков света (min light bounces)
Минимальное количество отскоков света для каждого пути, после которого интегратор воспользуется русской рулеткой для завершения путей, вносящих наименьший вклад для изображения. Установка этого параметра с высоким значением уменьшит количество шума, но так же может значительно увеличить время рендеринга. В случае малого количества отскоков – настоятельно рекомендуется установить его равным максимальному количеству отскоков.
- Минимум прозрачных отскоков (min transparent bounces)
Минимальное количество прозрачных отскоков (точнее, «проходов»). Установка более высокого значения снижает шум при первых отскоках, но также может быть менее эффективным для более сложной геометрии, такой как волосы и объёмы.
- Сэмплы слоя (layer samples)
При визуализации слоёв, когда для каждого слоя установлено собственное количество сэмплов; этот параметр определяет, как именно нужно использовать эти сэмплы.
- Включить (use):
Сэмплы слоя рендера переопределят установленные сэмплы сцены.
- С ограничением (bounded):
Ограничить послойное количество сэмплов глобальным количеством.
- Игнорировать (ignore):
Игнорировать послойные значения сэмплов.