在as3中平滑地移动对象

时间:2012-02-16 00:58:54

标签: flash actionscript-3 flashdevelop

我正在使用flashDevelop在as3中编写游戏 玩家(除其他外)正在屏幕上移动 使用更新其坐标的EnterFrame事件 他很难看动画的细节,看起来有点模糊 我该如何解决这个问题?

4 个答案:

答案 0 :(得分:2)

帕特里克提到你应该避免使用非整数坐标。你只需要对值进行舍入。所以而不是:

clip.x += value

使用:

clip.x += Math.round(value)

如果设置非整数坐标Flash,由于闪光试图分割像素,剪辑可能会因抗锯齿而显得模糊。您也可以尝试提高帧速率。

答案 1 :(得分:1)

您是否考虑过使用补间库?

其中一些是轻量级的,并根据FPS自动计算运动(你应该尽量保持高位)

以下是其中几个:

  1. http://www.greensock.com/tweenlite/
  2. http://gskinner.com/libraries/gtween/
  3. 希望有所帮助

答案 2 :(得分:0)

这可能对你有所帮助。 Optimizing transition/movement smoothness for a 2D flash game 有两种优化方法。

答案 3 :(得分:0)

addEventListener(Event.ENTER_FRAME, smothMove);

var i:int = 0;
var j:int= 1;

function smothMove (event:Event):void
{

clip.x = clip.x + i;
        i = i + j;

}