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 восстанавливает один субпиксель .
В каждой геометрической выборке учитываются все затененные соседи в фиксированном радиусе, и их значения интерполируются с использованием нашего настраиваемого фильтра с весами для восстановления деталей субпикселей . Считается, что соседний образец со значительно различающейся глубиной пересекает геометрическую кромку (синяя линия) и получает низкий вес. Веса фильтра оценивают расстояние между исходной и целевой выборками, сравнивая их значения глубины .
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 |
The value indicating if Subpixel Reconstruction Anti-Aliasing (SRAA) is enabled. Enabled by default.
Console access: render_sraa |
---|---|
Samples |
The 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. One of the following values:
Console access: render_sraa_samples |
Depth Threshold |
The 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. Range of values: [0.0f, inf]. The default value is 0.1f. Console access: render_sraa_depth_threshold |
Show Debug |
The value indicating if the SRAA debug mode is enabled. This mode shows the geometry edges smoothed by the SRAA. Enabled by default.
Console access: render_sraa_debug |
Use TAA |
The 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. Enabled by default.
Console access: render_sraa_temporal |