Raxvan совершенно прав, что «традиционные» методы сглаживания будут работать в трассировке лучей, включая те, которые используют информацию, такую как глубина, для сглаживания. Вы можете даже сделать временное сглаживание в трассировке лучей, например.
Жюльен подробно остановился на 2-м пункте Раксвана, который был объяснением суперсэмплинга, и показал, как вы на самом деле это делаете, также упомянув, что вы можете рандомизировать расположение сэмплов в пикселе, но затем вы входите в страну обработки сигналов, которая очень глубже, и это определенно так!
NN
Если вы сделаете это, вы все равно можете получить псевдоним. Это лучше, чем НЕ делать этого, потому что вы увеличиваете частоту дискретизации, поэтому сможете обрабатывать более высокочастотные данные (то есть более мелкие детали), но это все равно может вызывать алиасинг.
N
Когда вы используете только «обычные» случайные числа, как вы получаете из rand () или std ::iform_int_distribution, это называется «белый шум», потому что он содержит все частоты, например, как белый свет состоит из всех других цветов (частот). ) света.
Использование белого шума для рандомизации сэмплов в пикселе имеет проблему, заключающуюся в том, что иногда ваши сэмплы будут объединяться. Например, если вы усредняете 100 выборок в пикселе, но все они в конечном итоге оказываются в верхнем левом углу пикселя, вы не собираетесь получать ЛЮБУЮ информацию о других частях пикселя, поэтому ваш конечный цвет пикселя в результате будет отсутствовать информация о том, какого цвета это должно быть.
Лучшим подходом является использование так называемого синего шума, который содержит только высокочастотные компоненты (например, как синий свет - это высокочастотный свет).
Преимущество синего шума состоит в том, что вы получаете равномерное покрытие по пикселю, как вы получаете с равномерной сеткой выборки, но вы все равно получаете некоторую случайность, которая превращает наложение в шум и дает вам лучше выглядящее изображение.
К сожалению, синий шум может быть очень дорогим для вычисления, и все лучшие методы, кажется, запатентованы (какого черта ?!), но один из способов сделать это, изобретен Pixar (и запатентован тоже, я думаю, но не уверен на 100%) состоит в том, чтобы сделать четную сетку точек выборки, а затем произвольно сместить каждую точку выборки на небольшую величину - например, случайную величину между плюс или минус половиной ширины и высоты сетки выборки. Таким образом, вы получите своего рода выборку синего шума за довольно дешевую цену.
Обратите внимание, что это форма многоуровневой выборки, и выборка из пуассоновых дисков также является одной из форм, которая также является способом генерации синего шума:
https://www.jasondavies.com/poisson-disc/
Если вы заинтересованы в том, чтобы углубиться, вы, вероятно, захотите проверить этот вопрос и ответить на него!
Какова основная причина сглаживания с использованием нескольких случайных выборок в пикселе?
Наконец, этот материал начинает уходить в область трассировки Монте-Карло, которая является распространенным методом фотореалистичной трассировки лучей. Если вы хотите узнать больше об этом, прочитайте это!
http://blog.demofox.org/2016/09/21/path-tracing-getting-started-with-diffuse-and-emissive/