PDA

Просмотр полной версии : тормозит enterframe


BezDelnik
12.12.2009, 19:17
Привет всем.. вобщем нужно написать игрушку Zuma.. все вроде хорошо, вот только появилось проблема с enterframe.. поскольку скорость движения шариков в игре должна постепенно изменятся, я решил двигать их программно.. создается шарик (мувиклип в котором шарик проходит весь маршрут), добавляется в массив шариков, а потом в enterframe функции делаю проход по массиву и каждый шарик оправляю на определенный фрейм..

stage.addEventListener(Event.ENTER_FRAME, SEF);
function SEF(e:Event) {
for(var j=0; j<ballsArray.length; j++) {
ballsArray[j][1].gotoAndStop(ballsArray[j][1].currentFrame + speed);
}
}

сначала все хорошо, ну а где то после 20-го шарика их движение начинает заметно тормозить =( кто что может предложить/посоветовать?

ChuwY
12.12.2009, 19:33
Имхо лучше вообще переписать всю систему передвижения шариков
используя таймер вместо Event.ENTER_FRAME и
изменение координат спрайта вместо использования мувклипов и передвижения по их кадрам.

BezDelnik
12.12.2009, 20:03
дело в том, что шарики не по прямой идут и не по кругу.. они идут по уже нарисованой в дизайне траектории.. функцию траектории я не знаю =) не думаю, что там какая то функия была вообще.. нарисовали как захотели и все..

alatar
13.12.2009, 04:44
Для начала.
function SEF(e:Event) {
var length:int = ballsArray.length;
for(var j=0; j<length; j++) {
var ball:MovieClip = ballsArray[j][1];
ball.gotoAndStop(ball.currentFrame + speed);
}
}
В принципе, любой путь можно описать кривой Безье (http://bezier.ru/)