![]() |
посоветуйте годный твинер
всю жизнь использовал классический флэшевый твин(fl.transitions.Tween). При этом делаю такой хак:
Код AS3:
1) Был бесплатный 2) Предоставлял аналогичную гибкость 3) Рвал стандартный твин по производительности |
TweenLite, Caurina tweener
|
caseyryan, а не покажешь пример кода-аналога из первого поста в исполнении, скажем,твинЛайта?
Добавлено через 5 минут Мне крайне не нравится требование привязывать все к свойству анимируемого объекта, а если мне надо заанимировть,свойство text у текст филда? Добавлено через 33 минуты вопос скорее в том, есть ли у твинлайта хэндлер типа обычного TweenEvent.MOTION_CHANGE? |
|
Это я видел, но, похоже, твинлайт не позволяет следить за чем-нибудь типа tween.position
Что сильно ограничивает область его применения |
undefined, есть TimelineLite/TimelineMax, который позволяет собирать анимации в виртуальные таймлайны и управлять ими, как угодно.
|
Цитата:
|
undefined, в документации всё есть. http://greensock.com/asdocs/
Метод progress() возвращает позицию от нуля до единицы. |
illuzor,спасибо поковыряюсь.
2 all:Кто-нибудь может сказать из-за чего тормозит штатный твин и почему его рвут все сторонние? Если поработать дебагером становится ясно, что штатный твин использует enterFrame.Может с этим связаны тормоза? Как тогда остальные делают? Через таймер? |
Eaze Tween — наше все!
|
Цитата:
И еще хотелось бы чтоб после вызова метода eaze что-нибудь возвращалось для управления анимацией, чтоб они не накладывались друг на друга.Меня ,впринципе, обычный твин устраивает всем кроме производительности.Все больше склоняюсь к мысли сделать свой по-быстрее.Только надо понять почему тормозит штатный, чтоб не наступать на те же грабли |
Во-первых не совсем понятна идея "управлять анимацией" с помощью твинов, которые созданы как раз для того, чтобы запрограммировать и забыть, дожидаясь, когда вся эта анимированная красота завершит движение.
Во-вторых, если надо (это редко) взять именно фазу твина, то я ее и анимирую. Ну т.е. это конечно может показаться нкудобным (а може так и есть), но мне легче раз в сто лет завести приветное поле _phase и твинить его, производя в onUpdate нужные вычисления, чем отказываться от удобного, шустрого, бесплатного твиннера. Там действительно дофига настроек, которые делают почти ненужным ручное вмешательство. Дело вкуса :) |
Цитата:
Цитата:
|
1. При запуске новой анимации можно прямо в твиннере указать стартовое положение + обозначить, что все прежнии анимации этого объекта следует прервать.
2. Про доступ к DO не понял. Где стартую твин — там и прописываю поле, там и обрабатываю update. Доступа к DO хватит и того, что есть по определению. |
Цитата:
Цитата:
|
Цитата:
Цитата:
|
Цитата:
Цитата:
Цитата:
|
Цитата:
Цитата:
|
Цитата:
|
Ну, например, в каждом таком спрайте делаешь метод update(phase:int) {…} и вызываешь его по onUpdate в диапазоне 0…1, а уже в этом методе двигаешь текстовое поле, как положено по анимации. Один из вариантов.
|
Цитата:
Цитата:
|
Zebestov, кажется понял что ты предлагаешь.Думаю можно заставить eaze-tween мимикрировать под стандартный твин.Не подскажешь где можно найти хелп по нему? Интересует зачем нужна запись eaze(target).from(duration,from_obj) и чем это отличается от eaze(target).to(duration,from_obj)?
|
caseyryan, точняк ыы :)
undefined, а хелпа сам не нашел :) но он и не нужен особо. Той памятки, что по ссылке + ASDoc-ов хватает для пользования. Запись удобна тем, что можно настраивать анимацию в одну строку. Забыл (никогда и не знал?) как этот стиль называется. Что касается from, так оно ж из названия понятно: это не "анимируй меня из текущего положения куда-то туда" как в to, а "анимируй меня откуда-то оттуда в мое текущее положение". |
Zebestov,понял, спасибо.Думаю тема исчерпала себя.
|
Цитата:
|
поднимаю эту тему т.к. решение оказалось спорным
zebestov,решил прикрутить по твоему совету этот твинер.Но вот какая беда:Если запустить одну анимацию Код AS3:
Код AS3:
Код AS3:
|
Не нужно ничего придумывать, достаточно во втором случае указать, чтобы не затиралась текущая анимация указанного объекта target:
Код AS3:
|
zebestov,благодарю.Мне оказывается как раз не надо чтоб onComplete для старого твина вызывался т.к. до старта нового твина меняется окружение и старая анимация становится иррелевантна ему. Решил с помощью
Код AS3:
|
| Часовой пояс GMT +4, время: 07:02. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.