[Mesa-dev] msaa in softpipe

Roland Scheidegger sroland at vmware.com
Mon Nov 19 07:06:21 PST 2012


Am 18.11.2012 09:19, schrieb Dave Airlie:
> so I've been reading trying to figure out what msaa is and how it
> works (I've read it about 30 times now and still have only a passing
> idea!!)
> 
> So softipipe has some coverage info it stores per quad and passes in
> as an input,
> 
> just wondering what this was meant for, like has someone gotten some
> AA done with softpipe before or has plans for how to implement it?

As far as I can tell this is only used for implementing legacy smooth
(i.e. round) points (possibly could be used for other similar things
like smooth lines), though it appears to be disabled for that as well -
I guess not setting coverage info to 1.0 for tris would be a good reason
why it isn't enabled at all...

I think for implementing true msaa this isn't really useful.
The theory behind basic msaa isn't all that complicated, though I'm
unsure how much work it would be for softpipe.
Essentially need to store multiple depth/color samples per pixel and run
depth tests on all these samples while invoking fragment shaders only once.
Of course newer GL (and d3d) versions can do more (like specifying
fragment shaders should also be run more than once per pixel),
alpha-to-coverage, centroid sampling etc.) but for a "basic"
implementation of msaa those things aren't really needed.

Roland




More information about the mesa-dev mailing list