Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 无跳跃的平滑连续动画_Actionscript 3_Flash - Fatal编程技术网

Actionscript 3 无跳跃的平滑连续动画

Actionscript 3 无跳跃的平滑连续动画,actionscript-3,flash,Actionscript 3,Flash,我已经为此挣扎了3天了,非常感谢你的帮助! 我试图在y轴上制作简单的连续动画 问题是动画不流畅!!! 它有跳跃和打嗝。 一开始很难看到,但一旦你看到它,你就无法摆脱它 以下是一个例子: 以下是源文件: 这段代码非常简单: import flash.events.Event; addEventListener(Event.ENTER_FRAME, moveRoad); var deltaY:Number = 0; function moveRoad(event:Event):void {

我已经为此挣扎了3天了,非常感谢你的帮助! 我试图在y轴上制作简单的连续动画

问题是动画不流畅!!! 它有跳跃和打嗝。 一开始很难看到,但一旦你看到它,你就无法摆脱它

以下是一个例子:

以下是源文件:

这段代码非常简单:

import flash.events.Event;

addEventListener(Event.ENTER_FRAME, moveRoad);

var deltaY:Number = 0;

function moveRoad(event:Event):void
{
    deltaY = (deltaY < stage.stageHeight) ? deltaY + 5  : 0;
    road1.y = deltaY;
    road2.y = deltaY - road1.height
}
导入flash.events.Event;
addEventListener(Event.ENTER_FRAME,moveRoad);
var deltaY:数字=0;
功能移动道路(事件:事件):无效
{
三角洲=(三角洲<舞台高度)?三角洲+5:0;
道路1.y=三角洲;
道路2.y=三角洲-道路1.2高度
}
但相信我,直到现在,我尝试了20种不同的解决方案,但都没有成功。 到目前为止,我一直尝试的解决方案是:

  • 通过setInterval()设置动画
  • 通过getTime()设置动画
  • 设置位图动画
  • 通过复制像素设置动画
唯一有效的方法是使用stage3D和Starling!但我不能把它用于我的项目。
有人吗?

你可以尝试使用TweenLite和BlitMask


只是一个猜测:可能是这样,因为当deltaY太高时,您将其设置为0。试试这个:deltaY=(deltaY+5)%stage.stageHeightHi Nico,试试看。这不是问题。这可能是您的系统/flash player插件的问题。所有系统、所有flash player上都存在此问题。