On Apr 30, 2013, at 10:36 PM, "Robert O'Callahan" <rob...@ocallahan.org> wrote:

> On Wed, May 1, 2013 at 5:28 PM, Andreas Gal <g...@mozilla.com> wrote:
> Should we hide the temporary surface generation (when needed) within the API?
> 
> GLContext::Composite(Target, Source, EffectChain, Filters)
> 
> And if multiple shaders or passes are needed, we create a temporary surface 
> on the fly and then do the final composite with the given EffectChain.
> 
> It certainly should be hidden within the GLContext filter implementation. 
> That probably needs to live somewhere under gfx/gl, since Moz2D will need 
> access to it and Moz2D doesn't depend on layers.

Why would Moz2D need access to that path? D2D provides built-in effects for 
pretty much all of the SVG filter spec (and more). If we want to abstract 
things at the EffectChain and Filter object level instead of expressing 
everything in GLSL, we can as well directly generate D2D-specific code from 
that. For accelerated GL I think we are homing in on using SkiaGL, which does 
its own internal implementation of effects/filters via GLSL. So Moz2D would 
basically map to D2D and SkiaGL.

We might actually want to do it the other way around and use SkiaGL to 
implement complex parts of the compositor pipeline. If we are comfortable with 
using SkiaGL via ANGLE on Windows, we could even do the Windows compositor 
effects/filters using SkiaGL. This would reduce the amount of code we have to 
write a lot (and give us one grand unified gfx pipeline). Its mostly just a 
bunch of glue code around SkiaGL.

Andreas

> 
> Rob
> -- 
> q“qIqfq qyqoquq qlqoqvqeq qtqhqoqsqeq qwqhqoq qlqoqvqeq qyqoquq,q qwqhqaqtq 
> qcqrqeqdqiqtq qiqsq qtqhqaqtq qtqoq qyqoquq?q qEqvqeqnq qsqiqnqnqeqrqsq 
> qlqoqvqeq qtqhqoqsqeq qwqhqoq qlqoqvqeq qtqhqeqmq.q qAqnqdq qiqfq qyqoquq 
> qdqoq qgqoqoqdq qtqoq qtqhqoqsqeq qwqhqoq qaqrqeq qgqoqoqdq qtqoq qyqoquq,q 
> qwqhqaqtq qcqrqeqdqiqtq qiqsq qtqhqaqtq qtqoq qyqoquq?q qEqvqeqnq 
> qsqiqnqnqeqrqsq qdqoq qtqhqaqtq.q"

_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to