Skip to main content
Lorenzo_Nuvoletta-K15qTH
Known Participant
October 3, 2012
Question

Inconsitent Render between Air and Flash Player

  • October 3, 2012
  • 4 replies
  • 1029 views

I opened a bug here https://bugbase.adobe.com/index.cfm?event=bug&id=3340539

As you can see there is an inconsinstency of rendering between Flash Player and Air.

In Air you you draw frame 1 of a movieclip you will never be able to render that again.

Problem Description:

If you have a MovieClip with 2 or more frames and draw each one of those frames in separate BitmapData, you will not be able to draw the first frame anymore.

This only happens in Air (PC and Mobile).

Flash Player behaves normally.

Steps to Reproduce:

Create a MovieClip with 3 frames (make a square of different color on each frame).

Try to draw each individual frame on a different BitmapData. (frame 1, then 2 then 3)

Try to draw again each individual frame on a different BitmapData. (frame 1, then 2 then 3)

Actual Result:

When you draw frame 1 the second time, frame 3 will be drawn.

Expected Result:

When you draw frame 1, frame 1 should always be drawn.

Any Workarounds:

You need to reinitialize (create new MovieClip) every time you want to draw frame 1 again.

Code to reproduce:

var mc:Symbol1 = new Symbol1();


var i:int


for (i = 1; i <= 3; i++) {

mc.gotoAndStop(i);

var bmp:Bitmap = new Bitmap();

bmp.bitmapData = new BitmapData(mc.width, mc.height);

bmp.bitmapData.draw(mc);


addChild(bmp);

bmp.x = mc.width * (i-1);

}


for (i = 1; i <= 3; i++) {

mc.gotoAndStop(i);

bmp = new Bitmap();

bmp.bitmapData = new BitmapData(mc.width, mc.height);

bmp.bitmapData.draw(mc);


addChild(bmp);

bmp.x = mc.width * (i - 1);

bmp.y = mc.height;

}

This topic has been closed for replies.

4 replies

chris.campbell
Legend
October 5, 2012

Thank you for entering this bug.  I'll have someone take a look.

Chris

Lorenzo_Nuvoletta-K15qTH
Known Participant
October 5, 2012

Thank you Chris, do you think a possible fix could be implemented in Air 3.5, or it is too late?