Цитата:
Сообщение от ZlPredator
Лучше избегать небольших скоростей и выравнивать итоговые координаты под целый пиксель.
|
Так в том-то и дело, что скорость не маленькая.
Я сдвигаю по 9 пикселей за кадр, и по целым числам:

Код AS3:
var vSSpeed: Number = 9;
..
this.addEventListener(Event.ENTER_FRAME, moveSurroundings);
...
private function drawSurroundings():void
{
var sourceBMP:BitmapData = new perilaUp(0, 0);
upBorder1.graphics.beginBitmapFill(sourceBMP);
upBorder1.graphics.drawRect(0, 0, 1008, 168);
upBorder1.graphics.endFill();
addChild(upBorder1);
upBorder1.y = 17;
upBorder1.x = 0;
upBorder2.graphics.beginBitmapFill(sourceBMP);
upBorder2.graphics.drawRect(0, 0, 1008, 168);
upBorder2.graphics.endFill();
addChild(upBorder2);
upBorder2.y = 17;
upBorder2.x = 1008;
}
...
private function moveSurroundings(e: Event):void
{
upBorder1.x -= vSSpeed;
upBorder2.x -= vSSpeed;
downBorder1.x -= vSSpeed;
downBorder2.x -= vSSpeed;
if (upBorder1.x < -1008) {upBorder1.x +=1008}
if (upBorder2.x < 0) {upBorder2.x += 1008}
if (downBorder1.x < -1008) {downBorder1.x +=1008}
if (downBorder2.x < 0) {downBorder2.x += 1008}
}
aksios, это не подходит, скорость будет меняться.
UPD:
ZlPredator, я попробою ваш подход (признаюсь он несколько мне не ясен в силу отстутвия опыта работы с битмапой) и отпишусь, хоть там несколько ошибок, но выглядит очень лаконично!
В общем, подитоживая, должен вам сказать, что оба метода работают с одинакомыми дефектами, только вот возможно ZlPredator-а метод меньше кушает памяти.. Не проверял, но резултат не впечатлил.