2012-03-19 2 views
0

Я борюсь с этим в течение 3 дней, буду благодарен за вашу помощь! Я пытаюсь сделать простую непрерывную анимацию по оси y.Плавная непрерывная анимация без прыжков

Проблема в том, что анимация негладкая !!! У этого есть прыжки и икота. Трудно видеть в начале, но как только вы видите это, вы не можете избавиться от него.

Вот пример:

http://dl.dropbox.com/u/19570262/movementTest.swf

Вот исходный файл:

http://dl.dropbox.com/u/19570262/movementTest.fla

Данный код очень прост:

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 
} 

Но поверьте мне до сих пор я пробовал, как 20 diff которые также не работали. Решения я пытался до сих пор:

  • одушевленных по setInterval()
  • одушевленных по GetTime()
  • одушевленных растровых изображений
  • одушевленных по copyPixels

только один, который работал было используя stage3D и Starling! Но я не могу использовать его для своего проекта. Кто-нибудь?

+0

только предположение: Это может быть, вы установите becuase deltaY в 0, когда она слишком высока. Попробуйте следующее: deltaY = (deltaY + 5)% stage.stageHeight –

+0

Привет, Нико, попробовал. Это не проблема. –

ответ

0

Вы можете попробовать использовать TweenLite и BlitMask

http://www.greensock.com/blitmask/

+0

У этого есть точно такие же прыжки. Но спасибо –

+1

Возможно, это проблема с вашим плагином/флеш-плеером. – crooksy88

+0

Проблема существует для всех систем, всех флеш-плееров. –