Множественная выборка сглаживания
Множественная выборка сглаживания или мультисемплинг (Шаблон:Lang-en) — одна из наиболее простых механик сглаживания, пришедшая на смену избыточной выборке сглаживания и дающая схожий эффект при меньшем потреблении ресурсов.
Описание
В процессе растеризации графического примитива (треугольника, линии или точки) без сглаживания, GPU определяет цвет каждого пикселя на основе выборки (Шаблон:Lang-en) из центра этого пикселя. Если центр пикселя лежит внутри примитива, то этот пиксель закрашивается цветом этого примитива.
Мультисемплинг увеличивает число дискретных выборок для краёв объекта в раз, в отличие от сглаживания с избыточной выборкой, где число выборок увеличивается для всей сцены. Выборки для каждого пикселя, в таком случае, называют субпикселями, не путать с субпикселями мониторов. Так, при 4-кратном мультисемплинге края объектов будут отрисовываться в 4-кратном разрешении.
Если очередная выборка оказывается внутри растеризуемого примитива, её результат сохраняется в соответствующий субпиксель. В остальных случаях результат выборки игнорируется. После того, как все нужные выборки сохранены в экранном буфере, итоговый цвет пикселя определяется как усредненное значение цветов всех соответствующих ему субпикселей. В случае (см. гамма-коррекция) формула выглядит следующим образом:
- ;
где:
- — итоговый цвет пикселя,
- — количество выборок на пиксель,
- — цвет -й выборки.
Отличие этого способа сглаживания от SSAA в том, что 4-кратный экранный буфер используется лишь для пикселей, показывающих края какого-либо объекта, сглаживание «лесенок» на которых и является главной задачей. Это позволяет увеличить производительность, но не работает на прозрачных полигонах, а также несовместимо с методом отложенного освещения в DirectX 9 и младше.