Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 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

Создать новую тему   Часовой пояс GMT +4, время: 10:47.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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