Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   двигаем картинку - перемещается ступеньками (http://www.flasher.ru/forum/showthread.php?t=137293)

AndrewAndart 10.03.2010 02:50

двигаем картинку - перемещается ступеньками
 
Вложений: 1
Перечитал все похожие темы и так и не нашел решения.
двигаю картинку по горизонтали с целыми координатами.
При движении она перемещается как бы по частям - "ступеньками"
Изначально картинка была большая (1980:ширина и 582:высота) - думал просто тормозит, но когда для теста сделал этот пробник с маленькой картинкой, то оказалось, что размер не влияет на ступеньки.

Чувствую что гдето глупость какая то, а где не могу найти. Помогите кто чем может.
В архиве есть скомпилированаая swf и исходник fla
Код AS3:

/* 
AS3. Flash CS4
*/

import flash.display.Bitmap;
import flash.display.BitmapData;
 
/*
выдергиваю из библиотеки jpg картинку
с идентификатором "bg"
автоматически приписанную классу BitmapData
В свойства в библиотеке поставлена галочка "allow smoothing"
*/

 
var my0:BitmapData = new bg1(592, 1960);
 
/*
вывожу её на экран
*/

 
var my:Bitmap = new Bitmap (my0);
my.y=0;
my.x=980;
 
/* пробовал такую строчку в этом месте:
my.scaleY = 0.99
*/

/* пробовал такую строчку в этом месте:
my.cacheAsBitmap = true
*/

/* пробовал такую строчку в этом месте:
my.smoothing = true
*/

 
addChild(my);
 
/*
двигаю её по экрану с целым шагом = 3 пикселя
Картинка перемещается дергано - прорисовывается "ступеньками"
*/

 
addEventListener(Event.ENTER_FRAME, scrollBitmap);
 
function scrollBitmap(event:Event):void
{
        /*
        в этом месте пробовал my0.scroll (-3,0)
        */

    my.x -= 3;
        /*
        обнуляю координату "x", что бы зациклить движение
        */

        if (my.x < 0) {
        my.x =980
        }
}
 
 
stop ()


proxiServer 10.03.2010 10:20

Вроде нормально все. Ступеньками это как?

AndrewAndart 10.03.2010 12:03

Вложений: 1
Вот я сфоткал свой монитор. На Printscrin получается нормально. А на фотке видно.
Таких "ступенек" пробегает по картинке штук 20 в секунду хаотично. У меня шаг перемещения картинки 3 пикселя - и сдвиг ступеньки похоже такой же.

etc 10.03.2010 12:08

Bitmap#smoothing.

AndrewAndart 10.03.2010 12:21

а у меня там в коде в коментариях вот написано:
/* пробовал такую строчку в этом месте:
my.smoothing = true
*/
Это имеется в виду? может я это как то не так использую? или не в том месте?

etc 10.03.2010 13:51

А, smoothing вам не поможет, это особенность Flash Player. В 10.1 beta 3 такого нет.

MerlinTwi 10.03.2010 21:16

> etc
проверил в 10.1, выглядит точно также.

gloomyBrain 10.03.2010 21:44

Тупо медленный рендер? Хм, может быть галочка "use GPU" на что-то все-таки влияет? =)

AndrewAndart 10.03.2010 23:23

попробовал галочку "use GPU" (видимо имеется ввиду Publish Settingы-Hardware Acceleration =Level2 GPU?). у меня все по прежнему дергается.

Вот отвлекитесь от дел на 5 минут:
сделайте растровую картинку шириной писелей 10 и высотой пикселей 500 и попробуйте её программно двигать по горизонтали на 3 пикселя за кадр. Это же просто - ради интереса сделайте. Получится у кого нибудь её двигать плавно - "не кроша"?.
Тут можно сказать судьба моя решается - буду я дальше любить флэш или начну беспробудно пить))).

etc 11.03.2010 00:02

Цитата:

Сообщение от MerlinTwi (Сообщение 892261)
> etc
проверил в 10.1, выглядит точно также.

Мммм, значит это только под макось без «стробоскопа». У меня, в общем, картинка не разбивается при перемещении.


Часовой пояс GMT +4, время: 23:52.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.