Expand description
Subpixel morphological antialiasing (SMAA).
SMAA is a 2011 antialiasing technique that takes an aliased image and smooths out the jaggies, making edges smoother. It’s been used in numerous games and has become a staple postprocessing technique. Compared to MSAA, SMAA has the advantage of compatibility with deferred rendering and reduction of GPU memory bandwidth. Compared to FXAA, SMAA has the advantage of improved quality, but the disadvantage of reduced performance. Compared to TAA, SMAA has the advantage of stability and lack of ghosting artifacts, but has the disadvantage of not supporting temporal accumulation, which have made SMAA less popular when advanced photorealistic rendering features are used in recent years.
To use SMAA, add Smaa
to a bevy_render::camera::Camera
. In a
pinch, you can simply use the default settings (via the Default
trait)
for a high-quality, high-performance appearance. When using SMAA, you will
likely want set bevy_render::view::Msaa
to bevy_render::view::Msaa::Off
for every camera using SMAA.
Those who have used SMAA in other engines should be aware that Bevy doesn’t yet support the following more advanced features of SMAA:
-
The temporal variant.
-
Depth- and chroma-based edge detection.
-
Predicated thresholding.
-
Compatibility with SSAA and MSAA.
Structs§
- A component for enabling Subpixel Morphological Anti-Aliasing (SMAA) for a
bevy_render::camera::Camera
. - A render world component that stores the bind groups necessary to perform SMAA.
- Values supplied to the GPU for SMAA.
- The GPU buffer that holds all
SmaaInfoUniform
s for all views. - A render world component that stores the offset of each
SmaaInfoUniform
within theSmaaInfoUniformBuffer
for each view. - A unique identifier for a set of SMAA pipelines.
- The render graph node that performs subpixel morphological antialiasing (SMAA).
- A render world resource that holds all render pipeline data needed for SMAA.
- Adds support for subpixel morphological antialiasing, or SMAA.
- Stores the specialized render pipelines for SMAA.
- A render world component that holds the intermediate textures necessary to perform SMAA.
- A render world component that holds the pipeline IDs for the SMAA passes.
Enums§
- A preset quality level for SMAA.
Type Aliases§
- Smaa
Settings Deprecated