[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gnash-dev] Re: gotoAndPlay bug in Gnash (was: Serious performance p
From: |
Sandro Santilli |
Subject: |
Re: [Gnash-dev] Re: gotoAndPlay bug in Gnash (was: Serious performance problem) |
Date: |
Tue, 8 May 2007 08:38:57 +0200 |
On Tue, May 08, 2007 at 11:43:39AM +0800, zou lunkai wrote:
> In sprite_instance::goto_frame()
> resetDisplayList() clears all static characters placed from frame1 to
> current frame when jump back. Instead of doing that, I think we should
> just clear static characters placed from target frame to current
> frame. This might solve some problems above.
The main problem with our "reverse-execution" mechanism was associating
an instance with its PlaceObject2 tag. The implementation we found
in gameswf was scanning the playlist matching the instance id/depth
with the ones specified in PlaceObject2 and RemoveObject tags.
This was inappropriate because depth of an instance can be changed
by either subsequent PlaceObject2 tags (with move flag set)
or by ActionScript.
If we store a TimelineInfo object to "static" objects we might
solve this problem. The TimelineInfo might be a pointer to the
PlaceObject2 tag (now in its own header extracted with this
in mind) and the frame number in which it was executed.
Things to check before proceeding (by adding more testcases)
are:
- What happens when instance in frame 2 changes it's matrix
or depth due to a PlaceObject2 tag in frame 3 when looping back
from frame 6 to frame 4 ? What if we loop back to 2 or to 3 ?
- Are dynamic instances moved to the "static range depth" by ActionScript also
removed by loopback ? (see misc-ming.all/displaylist_depths_test.c)
- Are static instances moved to the "dynamic range depth" still removed by
loop-back ? (again, see displaylist_depths_test.c)
- Are load/unload events of instances placed and removed before the target
frame of
a loop-back invoked again ?
--strk;
- [Gnash-dev] Re: gotoAndPlay bug in Gnash (was: Serious performance problem), zou lunkai, 2007/05/07
- Re: [Gnash-dev] Re: gotoAndPlay bug in Gnash (was: Serious performance problem),
Sandro Santilli <=
- Re[2]: [Gnash-dev] Re: gotoAndPlay bug in Gnash (was: Serious performance problem), Udo Giacomozzi, 2007/05/08
- Re: [Gnash-dev] Re: gotoAndPlay bug in Gnash (was: Serious performance problem), Sandro Santilli, 2007/05/08
- Re[2]: [Gnash-dev] Re: gotoAndPlay bug in Gnash (was: Serious performance problem), Udo Giacomozzi, 2007/05/08
- Re: [Gnash-dev] Re: gotoAndPlay bug in Gnash (was: Serious performance problem), Sandro Santilli, 2007/05/08
- Re[2]: [Gnash-dev] Re: gotoAndPlay bug in Gnash (was: Serious performance problem), Udo Giacomozzi, 2007/05/08
Re: [Gnash-dev] Re: gotoAndPlay bug in Gnash (was: Serious performance problem), zou lunkai, 2007/05/08