Sign in to follow this  

Deferred shading and MSAA

This topic is 1277 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm trying to tackle MSAA in deferred shading.

Here' my current deferred shading pipeline:
 

Code :
1. Geometry stage - Render geometry to textures (position/normals/diffuse)
2. Shading stage - all output is rendered & blended into a "final texture"
  2.1 Render ambient light
  2.2 Render directional lights and shadows
  2.3 Render point lights and shadows
3. BlitFramebuffer() on the final texture
4. Swapbuffers and repeat 1.

In 2.1, 2.2 and 2.3 I need to read gbuffer textures (position/normals/diffuse) to do the lighting and shadowing.

My question is now, how do I most effectively accomplish MSAA (or any other form of good AA)? Do I have to read a number of samples in all the 3 shading passes (2.1, 2.2 and 2.3: sounds expensive!) or what? Is there any hardware support on can use?

Share this post


Link to post
Share on other sites

It seems like the most common approach is to do an edge detection, based on the depth and the normals, and blur the image a little around the edges.

 

http://visual-computing.intel-research.net/publications/papers/2009/mlaa/mlaa.pdf

http://en.wikipedia.org/wiki/Fast_approximate_anti-aliasing

Edited by HappyCoder

Share this post


Link to post
Share on other sites

This topic is 1277 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this