I am trying to optimize performance vs. rendering quality for my app and antialiasing is critical. There are many antialiasing techniques. In my case I realized that post-processing passes work much better than the default MSAA, however, they all come with some performance penalty. So, my question is how would you rank post-processing passes in terms of performance and quality?
My subjective perception is the following (slowest to fastest):
SSAA - good quality when level is at least 3
TAA - good quality when level is at least 3, level 2 is okay-ish.
SMAA
WebGLMultisampleRenderTarget
FXAA - doesnât work for me at all.
MSAA - doesnât work for me since I use post-processing.
So my questions are:
Would you rate it the same?
Are there any techniques that can help to remove pixelation while maintaining high fps on slow devices such as phones?
Can I combine any of these techniques together to get better results?
Thank you in advance!
PS: Important note. I use glTF models and my model is not moving, i.e. I do not apply rotation or any other transformations to the model. Instead, I rotate camera around it.
I think multisample rendertarget has been rolled into main now⌠its just the regular rendertargets under webgl2 they are multisample by default? Not sure.
Also a side question. Why do we always check for WebGL2 if I just tested ThreeJS on the very old device to check performance with no WebGL2 and it didnât work. It wasnât possible to create WebGLRenderer, errors while creating and ThreeJS published the message to the log saying that WebGL1 is deprecated and will be removed.
This should be documented better! I thought since I started using an effect composer I couldnât use hardware AA. I was using FXAA and while it runs fast, thereâs a lot to be desired in terms of quality.
Big thanks for your reply because I donât know if itâs in the ThreeJS documentation.
I donât think it is in the documentation. and Iâm not sure if doing that will break some of the other post processing effects⌠but Iâve used that for bloom and some others and it seems to work.
But yeah. hmmâŚ
Yeah, I see whatcha mean. If itâs likely to break other postprocessing effects, then I understand why it isnât in the docs. I only use bloom, so it works for me. Iâm glad because FXAA is pretty rough lookin and TAA looks much better but is pretty taxing.