2007/2/13, Udo Giacomozzi <[EMAIL PROTECTED]>: Tuesday, February 13, 2007, 6:02:54 PM, you wrote: >> The solution would be to have *multiple* invalidated bounds. MG> The algorithm, not the classes, is the hard bit
This can be solved by having "snapping" rectangles. Say, you have two rectangles that do not intersect each other but are just 30 pixels distant, then these will be merged nevertheless.
Yes, that should work. The essential thing is to be able to predict an upper bound on the maximum number of elements so that it cannot degenerate, however cruel the movie. Once you know how your algorithm works you will be able to generate a pathological test case or two that tries to force your code into generating the worst-case scenario you can imagine. How the snap size needs tuning for different stage sizes is a question you can face later on.
MG> An example of this is when the "bad" driver in Bozzetto's YesNo movie MG> empties the ashtray out of the car door, or the zoom out from the MG> traffic jam later in the same clip. Can you please post the URL to this movie? Would like to see how Flash performs in this case.
It's under freaknet.org/martin/video/Bozzetto
MG> Cairo responds to these events by MG> slowing to snail's pace and suddenly growing from 50 to 192 MB in MG> memory usage (while OGL and AGG currently keep steaming along at much MG> the same speed). Very strange! Do you have any idea why this happens? It's not related to the invalidated bounds in this case after all...
No, the only clue I have is the creation of a large number of small objects
MG> Once you have a complexity-limited fast algorithm, the data structures MG> you require and methods to operate on them should drop out of that. Can't agree. ... If you look at strk's class prototype you'll see that it does not rely on any special algorithm.
You are right of course. I confused the interface with the algorithm that implements it.
I admit I have a personal need to make the player faster.
That is usually the best motive of all! On another topic, did you get invited to the developers' bash in March? If you fancy the trip and can spare the time I'm sure your in-depth knowledge of renderer internals would be very welcome there. M _______________________________________________ Gnash-dev mailing list [email protected] http://lists.gnu.org/mailman/listinfo/gnash-dev

