I'm trying to tackle MSAA in deferred shading.
Here' my current deferred renderering 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?