5811
0
27/12/2021

Что происходит во время одного прохода рендеринга?

Каждый проход выполняет один образец сглаживания на пиксель и переменное количество вторичных образцов, задаваемое параметром баланса GI vs. AA.

Это означает, что при использовании настроек по умолчанию во время одного прохода каждый пиксель получает:

  • 1 образец сглаживания
  • 16 образцов GI (баланс GI vs. AA = 16)
  • 16*2=32 сэмпла прямого света (множитель Light Samples = 2).

Это также означает, что при использовании одинаковых настроек рендеринга каждый проход должен занимать одинаковое количество времени. Это время зависит от сложности визуализируемой сцены, количества образцов, участвующих в рендеринге, и общего количества пикселей (разрешение изображения). Рендеринг сложных сцен увеличит время рендеринга. Увеличение количества образцов увеличит время, необходимое для выполнения одного прохода, но также увеличит качество изображения на каждый отдельный проход.

Так сколько проходов достаточно?
Количество проходов, необходимых для окончательного рендеринга, сильно зависит от типа сцены, которая рендерится, поэтому не существует "универсального числа", которое должно быть достигнуто. Общее количество проходов в Corona соответствует количеству сглаживающих выборок, отбрасываемых на каждый пиксель, поэтому обычно для рендеринга детальных объектов или текстур требуется минимум 32-64 прохода. В некоторых случаях, таких как сложный GI или ярко выраженный DoF, может потребоваться гораздо больше проходов (даже 500 и более). Соотношение между количеством проходов, качеством изображения и временем рендеринга также зависит от такихпараметров, как баланс GI vs. AA, множитель Light Samples Multiplier (3ds Max | C4D), множитель Light Samples Multiplier (3ds Max | C4D), Max Sample Intensity (3ds Max | C4D) или Max Sample Intensity (3ds Max | C4D).

В целом:

  • Больше проходов = лучшее качество изображения (как сглаживания, так и GI и дискретизации света). Это всегда так.
  • Более высокие настройки дискретизации = больше времени требуется для выполнения каждого прохода, лучшее качество GI/сэмплированиесвета на каждый проход - полезно для сцен со сложным освещением, не требующих большого сглаживания.
  • Более низкие настройки дискретизации = меньше времени требуется для выполнения каждого прохода, хуже качество GI/дискретизации света- полезно для сцен, требующих большего сглаживания (DoF, размытие движения, детализированная геометрия, тонкие текстуры), без сложного освещения.

См:
Каковы наилучшие настройки рендеринга? Где находятся элементы управления supersampling / antialiasing в Corona?

Адаптивность

Начиная с Corona Renderer версии 1.4, адаптивность используется в процессе рендеринга, и она включена по умолчанию (нет причин когда-либо отключать ее). Адаптивность немного изменяет то, как каждый последующий проход влияет на качество изображения, поскольку количество выборок за проход теперь динамически регулируется, чтобы сбалансировать уровень шума по всему изображению. В целом, мы можем по-прежнему считать, что на каждый проход отбрасывается фиксированное количество образцов, чтобы понять, как работает процесс, но в реальности оно будет немного отличаться.

Чтобы узнать больше об адаптивности и о том, как она влияет на качество изображения, смотрите: что такое адаптивность?

Примеры

1. Примеры GI

1.1. Изображение, отрендеренное при настройках по умолчанию. 4 прохода. Имеется много GI шума, края геометрии не ровные.
На пиксель:
1AA сэмпл на проход * 4 прохода = 4 AA сэмпла всего
16 образцов GI за проход * 4 прохода = 64 образца GI всего
2 * 16 образцов прямого света * 4 прохода = 128 образцов прямого света всего

1.2. Изображение рендерится при настройках по умолчанию. 16 проходов. GI-шум меньше, края геометрии выглядят лучше, но изображение все еще низкого качества.
На пиксель:
1AA сэмпл на проход * 16 проходов = 16 AA сэмплов всего
16 образцов GI на проход * 16 проходов = 256 образцов GI всего
2 * 16 образцов прямого света * 16 проходов = 512 образцов прямого света всего

1.3. Изображение рендерится при настройках по умолчанию. 32 прохода. GI-шум меньше, а края геометрии выглядят хорошо. Это означает, что дальнейшее сглаживание для этой сцены не требуется (больше никаких проходов), но GI требует больше сэмплов для доработки.
На пиксель:
1 образец AA на проход * 32 прохода = 32 образца AA всего
16 образцов GI на проход * 32 прохода = 512 образцов GI всего
2 * 16 образцов прямого света * 32 прохода = 1024 образца прямого света всего

1.4. Больше образцов GI можно добавить, увеличив количество проходов. Изображение отрисовано при настройках по умолчанию. 200 проходов.GI-шум стал еще меньше, но все равно требуется еще несколько GI-образцов.
На пиксель:
1AA сэмпл на проход * 200 проходов = 200 AA сэмплов всего
16 образцов GI на проход * 200 проходов = 3200 образцов GI всего
2 * 16 образцов прямого света * 200 проходов = 6400 образцов прямого света всего

1.5. Оставим количество проходов на 200 и увеличим "баланс GI vs AA" до 32. Теперь изображение выглядит хорошо как с точки зрения шума, так и с точки зрения сглаживания, но согласно примеру 3. для хорошего сглаживания в этой сцене достаточно даже 32 проходов.
На пиксель:
1 сэмпл AA на проход * 200 проходов = 200 сэмплов AA всего
32 образца GI на проход * 200 проходов = 6400 образцов GI всего
2 * 32 образца прямого света * 200 проходов = 12800 образцов прямого света всего

1.6. Итак, давайте попробуем отрендерить эту сцену, используя только 32 прохода и 200 образцов GI (поменяйте местами количество проходов и значение "gi vs aa"). По качеству изображение практически не отличается от предыдущего, поскольку и 200, и 32 AA-сэмпла достаточно для получения гладких краев, и в обоих случаях использовалось одинаковое общее количество GI и light-сэмплов.
На пиксель:
1 образец AA на проход * 32 прохода = всего 32 образца AA
200 образцов GI на проход * 32 прохода = 6400 образцов GI всего
2 * 200 образцов прямого света * 32 прохода = 12800 образцов прямого света всего

2. Решатели GI

2.1. Сравнение сцены, отрендеренной с одинаковыми настройками, с использованием Path Tracing + UHD кэш, и Path Tracing в качестве обоих решателей:
PT + UHD
настройки по умолчанию
200 проходов

PT+PT
настройки по умолчанию
200 проходов

Вывод: использование UHD кэша в качестве вторичного GI решателя значительно сокращает количество необходимых проходов, тем самым уменьшая время рендеринга.

3. MSI

3.1. Настройки по умолчанию, MSI = 20 (значение по умолчанию)

3.2. Настройки по умолчанию, MSI = 10

3.3. Настройки по умолчанию, MSI = 5

3.4. Настройки по умолчанию, MSI = 0,5

3.5. Настройки по умолчанию, MSI = 0,05

Вывод: снижение значения MSI уменьшает шум в GI, тем самым уменьшая количество необходимых проходов ценой реализма. Это не влияет на шум, видимый в прямо освещенных областях.

4. DoF и размытие движения

4.1. Сцена с сильным эффектом DoF. 4 прохода.

4.2. Сцена с сильным эффектом DoF. 16 проходов.

4.3. Сцена с сильным эффектом DoF. 64 прохода.

4.4. Сцена с сильным эффектом DoF. 500 проходов.

Вывод: количество проходов (проб AA) определяет качество глубины резкости. Это также относится к размытию движения.

5. Тонкая геометрия

5.1. Модификатор Hair and fur. 4 прохода.

5.2. Модификатор Hair and fur. 16 проходов.

5.3. Модификатор Hair and fur. 32 прохода.

5.4. Модификатор Hair and fur. 200 проходов.

Вывод: количество проходов (пробы AA) решает качество тонкой геометрии, особенно там, где встречаются темные и светлые края.

6. Тонкие текстуры

6.1. Текстурированные объекты. 4 прохода.

6.2. Текстурированные объекты. 16 проходов.

6.3. Текстурированные объекты. 64 прохода.

Вывод: количество проходов (образцов AA) решает вопрос о качестве текстурированных материалов, особенно если текстура очень тонкая.


Более подробно ознакомиться со всеми курсами образовательного проекта CGBandit вы можете здесь.

Перевод статьи осуществлен образовательным проектом CGBandit c официального сайта coronarenderer.

Комментарии (0)