You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The problem's pretty much what Triang3l described in #3 (comment) -- with MSAA, roughly 2x as many triangles can cover a pixel along edges and many more can cover a pixel at triangle vertices, so it's more likely for the OIT buffers to overflow and for fragments to go to tail blending instead.
Here's an example using spinlock with 8 layers and 4x MSAA pixel-shading. The wireframe artifacts appear when enough spheres overlap:
The main solutions are to increase the number of layers, or to use MSAA sample-shading. For instance, it looks good with 16 layers:
and also looks good when changed to sample-shading:
The downside is that these use more memory. (simple in particular requires a lot of layers to look good, and I think linkedlist only works well with sample-shading MSAA.) Another way to get the visual effects of antialiasing without the memory/time cost is to apply an anti-aliasing post effect like DLAA - we have a dedicated sample for that at https://github.com/nvpro-samples/vk_streamline.
Now, loop32 and loop64 don't look good at all under pixel-shading MSAA; that's because their algorithms don't support it:
So, hopefully this sample accurately shows some of the artifacts that can occur with these algorithms when MSAA is enabled, and how to change the parameters to avoid them.
It's an interesting direction for future research - if you find a way to improve these algorithms in the case of MSAA pixel-shading to avoid wireframe artifacts, let us know! Or if you spot a bug in the code that produces these artifacts unnecessarily, please let us know.
Otherwise, I'm not sure if there's anything actionable here - for now, the answers to wireframe artifacts appear to be to
increase the value in the "layers" combobox
or to switch to "MSAA sample-shading"
(and to make sure you're using an algorithm that supports MSAA.)
I can see wireframes when I enabled pixel shading with MSAA as the closed issue said.
The text was updated successfully, but these errors were encountered: