[MMD] Anti Aliasing Showcase 2
This is my second comparison of the Anti-Aliasing methods that I’ve
tested. I used mipmaps on all test and have more to show the difference
outside of supersampling.
All are using High Quality Texture Filtering and Ainstropic Filtering at 16x on all drivers.
Previous comparison: https://pokefan531.tumblr.com/post/171769349563/mmd-anti-aliasing-showcase-this-is-a-montage
Internal methods:
No AA gives us raw aliased image on geometry just like games without any AA.
MMD’s
Internal AA setting uses driver’s MSAA at 8x without alpha coverage, as
seen on the leaves below, shadows, and shading on models. It does show a
little difference between Nvidia and AMD. On Nvidia, even if I try to
change the LOD setting, it doesn’t change for MSAA so some textures are a
bit blurry on the models on lower resolution, despite using high
quality filtering with 16x AF. Higher resolution may lessen the LOD
blur. However, the anti-aliasing method uses Sparse Grid to do better on
some lines, but hard to see the difference in this one when comparing
with Rotated Grid that AMD uses. AMD’s however, have more clear
mipmapping and the Rotated Grid method looks similar.
Shader methods:
FXAA
and SMAA shaders are from RayMMD’s extensions from github, and are used
without AA on to demonstrate. FXAA and SMAA doesn’t help on
disconnected lines and shimmering in motion is visible still. SMAA ia a
bit sharper, but neither can clean the aliasing at the models. At the
log on the bottom right, FXAA has a small advantage to do that slope
better. SMAA, like the last comparison, has the line glitch as seen on
the leaves. It is a bug only to that shader port to MMD.
SSAA_4x.fx
is less compatible with MMD, and if using some post processing effects
like SSAO, it can either have a little blur on edges, or aliased blur as
seen here. That shader is not well compatible with it, and you can see
it can look a bit worse than no AA.
Downsampling Methods:
Like
the Downsampling post and previous comparison, it does have up to 16x
downsampling quality and comparing each. SSAA_4x shader looks identical
to 4x if the shader is compatible with it, but it is comparable. 4x does
a good job at trying to do anti-aliasing, but if you look at the small
lines at the leafs, it is not completely smooth, and temporal aliasing
is still shown, but less frequent. 9x helps more and 16x cleans the rest
of small aliasing and looks better in motion where you don’t see a lot
of shimmering or temporal aliasing. This is the best way to use with
RAYMMD however, since this is the only method to do downsampling at the
monent. This is a manual downsampling, meaning you would have to
downsample from Photoshop or Virtualdub as this post was explained:
https://pokefan531.tumblr.com/post/171739184928/mmd-downscaling-anti-aliasing-with-ray-mmd
MSAA from two vendors:
Similar
to MMD’s AA. This method uses alpha coverage which does affect the
leaves this time. It is more smooth. However, MSAA will never take care
of shadows, self shadows, or shading. I decide to show Nvidia and AMD on
this one again, and you can compare the quality. The LOD situation from
MMD’s AA is also said here on lower resolutions. AMD’s seems to be
sharper on textures and both barely showed texture aliasing due to
mipmapping, regardless of shaders. For AA quality, AMD uses Rotated Grid
method and Nvidia uses Sparse Grid method. AA quality description are
pretty much the same as below, but using MSAA on this one.
Supersampling methods:
We’re
comparing Nvidia’s SGSSAA with AMD’s RGSSAA. Nvidia’s LOD can be change
here, so it can compare with AMD’s LOD. At 2x, you can see some
differences and aliasing is taken on one direction. Sparse Grid does
take care of the small lines a bit more, but you generally won’t be
using 2x supersampling. 4x, Sparse grid takes care of small lines
slightly more than Rotated grid. They are a bit harder to tell the
difference in this scene. Both of them at 4x looks a lot better than 4x
downsampling. 8x, the difference are pretty minor. At the log at the
bottom right, the slope is a bit smoother in Sparse grid and at Miku’s
hair, AA patterns are a bit less than Rotated grid. Honestly, this scene
is pretty hard to see some difference from 4x, but not sure about in
motion yet. With 8x paired with 4x downsampling for fun, the difference
is indisguinishable.
https://pokefan531.tumblr.com/post/171569153043/mmd-tutorial-sgssaa-with-nvidia-inspector-edit
Conclusion:
8x Supersampling is recommended for general use and there isn’t really
much a difference between SGSSAA and RGSSAA on this still image. This
scene doesn’t use RAYMMD, so it is safe to use 8x AA with any shaders.
4x is pretty good to and you can use it if your system can’t handle it
or rendering a 4k video with vram lower than 3gb if using several
shaders and effects. However, I prefer sticking with 8x on any situation
since I usually make videos and images at 1080p and 720p. I can still
use 8x for 4k images. Next one will be a video to test between SGSSAA
and RGSSAA to see how it looks in motion. I know SGSSAA does get rid of a
lot of shimmering and temporal aliasing to where it barely shows at 4x
and pretty much none at 8x, and I do want to see how it’s like for
Rotated Grid method.