W dniu 28 marca 2011 10:08 użytkownik Jasper van de Gronde <th.v.d.gronde@...528...> napisał:
I object to the word "branch", as I really, really, really hope it won't be a branch by then. And if it still is, then I think that integrating it with trunk should be more important than pretty much anything else.
I agree. Item 7 would make most sense if I managed to merge the Cairo branch before GSoC (I could include it in the proposal as a preparatory task).
I don't completely understand your description, but in general improving caching would be fine. What I don't understand is what you mean by "filling them with data in small increments".
Right now we render each tile by rendering all pixels it depends on, without reusing any data from other tiles. Consider a large radius Gaussian blur applied to a shape: a small tile of the final image depends on a large number of pixels of the shape. We do not reuse any of the rendered pixels of the shape between tiles. This means that every tile of the image needs to render a large area of the shape in order to apply a blur to it. In extreme cases, rendering each tile takes almost as much as rendering the entire canvas.
My idea is to allocate a big image for the shape pixels and keep it around until the entire scene is rendered. Each tile would render a portion of the shape, but would not re-render the pixels of the shape that we already know from the previous tiles. I hope somebody will understand what I mean :)
Regards, Krzysztof