Understanding Antialiasing in Computer Graphics

cmsc 491 691 n.w
1 / 15
Embed
Share

Explore the concepts of antialiasing and aliasing artifacts in computer graphics, including common techniques used in games such as SSAA, MSAA, MLAA, FXAA, and TAA. Discover how these methods blur high-frequency artifacts to enhance image quality and reduce aliasing effects caused by sampling. Dive into the details of each technique and learn how deep learning is being leveraged for antialiasing in modern graphics rendering.

  • Antialiasing
  • Computer Graphics
  • Games
  • Aliasing
  • Techniques

Uploaded on | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. CMSC 491/691 Antialiasing

  2. Aliasing Rendering artifacts due to sampling Happens at high frequency places Edges have infinitely high frequency Temporal aliasing too Things moving too fast for frame sampling rate

  3. Antialiasing Blur away frequencies that would alias Blur preferable to aliasing Temporal Aliasing: Motion Blur Spatial Aliasing: Numerical approximation to filter kernel with more samples!

  4. Common Antialiasing Techniques in Games SSAA MSAA MLAA / FXAA TAA

  5. SSAA: S Supers sampled A Antia aliasing Render higher resolution N x per-pixel rasterization samples N x pixel shading samples N x buffer sizes Filter & resample Described as 4-sample SSAA or 4x SSAA

  6. MSAA: M Multis sample A Antia aliasing N-sample rasterization and visibility, only shade one N x per-pixel rasterization samples 1 x pixel shading samples 1 x buffer sizes (except N x depth samples) Hardware support, including sample placement Need depth resolve before using depth buffer as texture

  7. MLAA: M Morphol logical A Antia aliasing Postprocessing pass on aliased image 1 x per-pixel rasterization samples 1 x pixel shading samples 1 x buffer sizes Algorithm Look for jaggy edges Infer original edges Fix image FXAA is a popular variant Available shading code

  8. DLAA: Deep Learning Antialiasing Postprocessing pass on aliased image 1 x per-pixel rasterization samples 1 x pixel shading samples 1 x buffer sizes Algorithm Train neural network on aliased & antialiased images Like MLAA, but less hacky Not quite fast enough yet Can produce strange results if images are too far from training data

  9. TAA: T Temporal A Antia aliasing Share samples across frames N x rasterization samples (1 per frame) N x shading samples (1 per frame) 2 x buffer sizes (add history buffer) Exponential weighted average Must find previous data for this pixel in history

  10. Exponential Average Regular average Incremental average

  11. Exponential Average Incremental Exponential: don t change weight

  12. History Account for motion Camera motion: current and previous transform Object motion: velocity buffer Also useful for motion blur Resampling Land between pixels Avoid blurring history data (Mitchell-Netravali filter rather than just bilinear) Rejection Occlusion, Disocclusion = stuff in buffer may be a different object Color clamping

  13. TAA problems Start-up aliasing Alias until you get enough samples Disocclusion aliasing No history when things appear Ghosting Rejection/clamping failure on noisy backgrounds Pulsing Cycle of reject/average Fireflies Single bright sample should average in, but might reject or pulse instead

  14. TAA wins Monte Carlo all the things Some samples per frame Multiply by TAA Screen Space Reflection 1-12 samples per pixel * 8 frames 8-96 samples Ambient Occlusion 1-6 samples per pixel * 8 frames 8-42 samples Percentage Closer Soft Shadows 32 samples per pixel * 4 pixels/quad * 8 frames = 1024 samples

  15. Between Sample Aliasing Attempt to antialias shader results between AA samples Mipmap: pre-filtered versions of texture at power-of-2 scales Bilinear: choose closest to 1 texel/sample: lerp x, lerp y Trilinear: choose two closest to 1 texel/sample: lerp x, lerp y, lerp levels Non-color data needs different filtering Normals: Toksvig, LEAN; Shadows: PCSS, Variance Shadow Maps Noise: use noise that averages to 0, drop high frequency components Other: shader dependent, usually manual

More Related Content