为什么生涩的动画?

时间:2011-12-17 17:54:28

标签: flash actionscript-3

为什么它不顺畅? 我尝试使用一个小图像(500px宽度),但它也是生涩的动画

var loader:Loader = new Loader();
    loader.load(new URLRequest("http://cevek.ru/img0.gif"));
    // http://cevek.ru/img1.gif 500px width
    addChild(loader);

var img_x = 0;
stage.frameRate = 100;
addEventListener(Event.ENTER_FRAME, onEnterFrame);
function onEnterFrame(event:Event){ 
    img_x++;
    loader.x = -1*img_x;
}

其他变种

var loader:Loader = new Loader();
    loader.load(new URLRequest("http://cevek.ru/img3.gif"));
    addChild(loader);

var img_x = 0;
stage.frameRate = 25;
addEventListener(Event.ENTER_FRAME, onEnterFrame);
function onEnterFrame(event:Event){ 
    img_x+=4;
    loader.x = -1*img_x;
    if (img_x > 100)
   img_x = -500;
}

1 个答案:

答案 0 :(得分:0)

您使用的图片 way 太大,Flash Player无法处理。它不是500像素,而是宽20000像素!如果必须在运行时按比例缩小,那么动画生涩就不足为奇了......

你应该在Photoshop(或任何类似的程序)中缩小你的照片,并使用缩小的版本来制作动画 - 你的所有问题都会消失。

如果您需要更大视图的完整图片宽度,请将图片剪切成更小的部分(我建议宽度不超过100像素),并将所有可见区域之外的部分设置为{{1} }

修改

此外,在开始动画之前,您可能需要考虑使用event listener等待图像完全加载。

更多编辑

使用补间,或者更好的是,使用TweenLite