FXAA in opengl
I am planning to replace the MSAA(antialiasing) in game with FXAA(for speed) but I cannot seem to find any info on the web explaining how FXAA actually works much less anything specific to OpenGL, could somebody explain to me how FXAA works and give me any OpenGL specific info?
If you haven't seen the whitepaper it is here. It appears to be a two step process. First do an edge detect algorithm based on the current screen and output the edges to a new texture, use that new texture and wher there are edges you do a blur. You can discard non-edge pixels by turning on alpha test or some early reject so that the pixel shader only runs on the few select edge pixels in your texture.
http://developer.download.nvidia.com/assets/gamedev/files/sdk/11/FXAA_WhitePaper.pdf
http://developer.download.nvidia.com/assets/gamedev/files/sdk/11/FXAA_WhitePaper.pdf
It's a single-step process. You just render your scene to a texture, then you draw a full-screen quad using the FXAA shader and that texture as input.
It's assumed that if you're going to be integrating FXAA that you already know how to perform full-screen post-processing effects. If you're new to this, perhaps look up some OpenGL post processing tutorials first.
It's assumed that if you're going to be integrating FXAA that you already know how to perform full-screen post-processing effects. If you're new to this, perhaps look up some OpenGL post processing tutorials first.
Use the code provided by Timothy Lottes at NVIDIA: http://timothylottes.blogspot.com/2011/07/nvidia-fxaa-39-released.html
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement