Subpixel Reconstruction Anti-Aliasing (SRAA)
Subpixel Reconstruction Anti-Aliasing (SRAA) is an additional anti-aliasing technique that restores small image details. It also provides a net speedup and minimal overhead compared to supersampling. It is recommended to combine this technique with TAA for better anti-aliasing quality. Subpixel Reconstruction Anti-Aliasing (SRAA) - это дополнительный метод сглаживания, который восстанавливает мелкие детали изображения. Он также обеспечивает чистое ускорение и минимальные накладные расходы по сравнению с суперсэмплингом. Рекомендуется комбинировать эту технику с TAA для лучшего качества сглаживания.
How SRAA worksКак работает SRAA#
SRAA is used in deferred rendering to achieve high-quality anti-aliasing by sampling geometry at higher resolution than shading, since shading usually changes more slowly than geometry. SRAA используется при отложенном рендеринге для достижения высококачественного сглаживания за счет выборки геометрии с более высоким разрешением, чем затенение, поскольку затенение обычно изменяется медленнее, чем геометрия.
There are two stages in SRAA: В SRAA есть два этапа:
Depth prepass multisampling generates depth position information at subpixel resolution. Subpixels are subdivision cells of a pixel. Depth prepass samples the geometry in the screen-space and stores samples’ position information in a G-buffer. Мультисэмплинг с предварительным проходом глубины генерирует информацию о положении по глубине с субпиксельным разрешением. Субпиксели - это ячейки подразделения пикселя. Предварительный проход глубины сэмплирует геометрию в экранном пространстве и сохраняет информацию о местоположении сэмплов в G-буфере.
-
Reconstruction pass uses the custom filter after the deferred shading to refine the shading results and output a screen-resolution, antialiased frame. In the picture below you can see how the SRAA reconstructs one subpixel. Этап реконструкции после отложенного затенения использует настраиваемый фильтр , который уточняет результаты затенения и выводит кадр со сглаживанием разрешения экрана. На рисунке ниже вы можете увидеть, как SRAA восстанавливает один субпиксель .
At each geometric sample, all shaded neighbors in a fixed radius are considered and their values are interpolated using our custom filter with weights to restore subpixel details. A neighboring sample with significantly different depth is considered to be across a geometric edge (blue line), and receives a low weight. The filter weights estimate distance between source and target samples by comparing their depth values. В каждой геометрической выборке учитываются все затененные соседи в фиксированном радиусе, и их значения интерполируются с использованием нашего настраиваемого фильтра с весами для восстановления деталей субпикселей . Считается, что соседний образец со значительно различающейся глубиной пересекает геометрическую кромку (синяя линия) и получает низкий вес. Веса фильтра оценивают расстояние между исходной и целевой выборками, сравнивая их значения глубины .
UNIGINE's implementation of SRAA uses a depth threshold method to identify areas of the frame with edges. This way we eliminate the blur problem that comes from applying a smoothing filter to areas with no depth variation. Despite the fact that this approach uses only depth it keeps acceptable quality and represents a good trade-off for the sake of performance.Реализация SRAA в UNIGINE использует метод глубины threshold для определения областей кадра с краями. Таким образом мы устраняем проблему размытия, возникающую из-за применения сглаживающего фильтра к областям без изменения глубины. Несмотря на то, что этот подход использует только глубину, он сохраняет приемлемое качество и представляет собой хороший компромисс в пользу производительности.
Pros and Cons of SRAA:
+ Subpixel details and geometry reconstruction.
- Costs performance.
Плюсы и минусы SRAA:
+ Имеет фиксированное время выполнения независимо от сцены и сложности изображения.
- Влияет на производительность
SRAA AdjustmentНастройки SRAA#
Subpixel Reconstruction Anti-Aliasing (SRAA) settings are available for adjustment via the Render -> Antialiasing section of the Settings window, along with Fast approXimate Anti-Aliasing (FXAA), Temporal Anti-Aliasing (TAA) and Supersampling settings. The following settings are available when the Custom preset for Anti-Aliasing is selected.Параметры Subpixel Reconstruction Anti-Aliasing (SRAA) доступны для настройки в разделе Render -> Antialiasing окна Settings наряду с настройками Fast ApproXimate Anti-Aliasing (FXAA) , Temporal Anti-Aliasing (TAA) и Supersampling .
SRAA SettingsНастройки SRAA#
SRAA | value indicating if Subpixel Reconstruction Anti-Aliasing (SRAA) is enabled. выкл. по умолчанию.
Консольная команда: render_sraa (API) |
---|---|
Samples | number of depth geometry samples per pixel. This value may significantly affect performance, so keep it low when the image quality differences are not apparent. Одно из следующих значений:
Консольная команда: render_sraa_samples (API) |
Depth Threshold | depth threshold value used for edges detection that specifies the area for the SRAA processing. Turn on the debug mode and adjust this parameter in such a way that covers the required edges but at the same time leaves out the unnecessary geometry in the scene. Диапазон значений: [0.0f, inf]. Значение по умолчанию : 0.1f. Консольная команда: render_sraa_depth_threshold (API) |
Show Debug | value indicating if the SRAA debug mode is enabled. This mode shows the geometry edges smoothed by the SRAA. выкл. по умолчанию.
Консольная команда: render_sraa_debug (API) |
Use TAA | value indicating if TAA integration is enabled. SRAA will use the shading sample from the previously rendered frame (TAA) to achieve correct anti-aliasing. Uses camera jittering, so it works only when the TAA (см. ) is enabled. It is recommended to use this option by default. вкл. по умолчанию.
Консольная команда: render_sraa_temporal (API) |