Показать сообщение отдельно
Старый 01.10.2011, 02:46
Kicker вне форума Посмотреть профиль Отправить личное сообщение для Kicker Найти все сообщения от Kicker
  № 1  
Ответить с цитированием
Kicker
 
Аватар для Kicker

Регистрация: Jun 2006
Сообщений: 69
По умолчанию Гладкая анимация

Пытаюсь создать плавное движение текста, но во время движения он временами дергается и выглядит убого.
Пробовал двумя способами (обычным и блитированием) - результат одинаковый.
Может кто подскажет как можно это исправить.

Пример:
http://stulnikov.com/example/

Код:
Код AS3:
        public class Main extends Sprite 
	{
		[Embed(source = "assets/image.png")] private var SomeImage:Class;
 
		private var item:BitmapData;
		private var itemRect:Rectangle;
		private var screen:BitmapData;
		private var rect:Rectangle;
		private var point:Point;
 
		private var image:Bitmap;
 
		public function Main():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
 
			screen = new BitmapData(800, 600, false);
			rect = new Rectangle(0, 0, screen.width, screen.height);
			point = new Point(-100, 100);
			item = new SomeImage().bitmapData;
			itemRect = new Rectangle(0, 0, item.width, item.height);
 
			image = new SomeImage();
			image.x = -100;
			image.y = 100;
 
			addChild(new Bitmap(screen));
			//addChild(image);
 
			addChild(new Stats());
 
			addEventListener(Event.ENTER_FRAME, enterfFrame);
		}
 
		private function enterfFrame(e:Event):void 
		{
			animation1();
			//animation2();
		}
 
		private function animation1():void
		{
			screen.lock();
			screen.fillRect(rect, 0xFFFFFF);
			screen.copyPixels(item, itemRect, point);
			screen.unlock();
			point.x += 5;
		}
 
		private function animation2():void
		{
			image.x += 5;
		}
 
	}
Исходники (FlashDevelop проект):
http://stulnikov.com/example/TestAnimation.rar