Hi all, my last commit to CVS (not 0.7.2 branch) implements all sorts of masks for the AGG renderer, including nested ones. With this one last change the renderer should support *everything* correctly, except for the yet missing video support.
There is a known issue with adjacent shapes not being perfectly rendered (only for the anti-aliasing pixels), but it's only visible in some rare cases. However, all gradients, gradient overflows, transformations, curves, sub-shapes, masks, glyphs, outlines, cursors..... should be rendered correctly. In the case of masks it may support even more than the Flash plugin does (for example, text boxed are masked, while Flash simply does not render them at all when they're under a mask and AFAIK dynamic text does not work as a mask, while Gnash allows it), however outlines have been explicitely disabled inside a mask, to be compatible with Flash. The renderer uses damn much templates (note the AGG render handler is my first c++ code I wrote ever) and this probably results in a very bloated machine code. But it's a good thing because it speeds up rendering (specializations for many situations). Anyway, the AGG renderer re-implements many parts of the rendering process. First of all, it skips the tesselator. So, if you notice any errors while rendering that work with other renderers, please let me know. Otherwise I'll see to optimize the code a bit (possibilities noted in the code) and have a look at the ActionScript classes because there is certainly a lot left to do ;) Udo _______________________________________________ Gnash-dev mailing list [email protected] http://lists.gnu.org/mailman/listinfo/gnash-dev

