Просмотр полной версии : Как сделать след от движения?
lingardo
03.04.2008, 15:40
Движется шар по трпектории (на самом деле он маска для трубы или непустой окружности). Нужно чтобы он оставлял за собой след. Тоесть допустим он открывает маску с водой в трубе. Если он и дальше будет двигатьсяне оставляя след - не будет эффекта заполнения трубы водой. Труба не прямая, поэтому прямоугольник размера трубы в качестве маски не подойдет.
Возможноли оставлять след от движения объекта?
Расскажите как.
Спасибо.
lingardo
03.04.2008, 15:56
Как правильнее дублировать? Делать через каждые несколько кадров ключевой и оставлять в нем копию движущегося объекта?
Неее шарик - мувиклип. Его и надо не двигать а дублировать.
lingardo
03.04.2008, 16:01
Программно? Или это можно стандартными средствами сделать? Подскажите, пожалуйста, как.
Программно естесно. Иначе будет куча кейфремов.
lingardo
03.04.2008, 16:13
Понял, попробую.
Благодарю за помощь.
___
Нужно чтобы, допустим, в каждом кадре mc оставлял свою копию. Глупый вопрос - не писать же этот код в каждом кадре. Как правильно поступить? =)
Анимация не программная? Ну, можно делать setInterval'ом через n миллисекунд копию объекта. Но, имхо, в принципе дубликаты в качестве маски - не лучшее решение.
lingardo
04.04.2008, 14:05
Анимация не программная? Ну, можно делать setInterval'ом через n миллисекунд копию объекта. Но, имхо, в принципе дубликаты в качестве маски - не лучшее решение.
Дубликаты нагромаждают ролик. Может у Вас есть какая-нибудь идея? Я слаб в AS, но думаю ведь возможно программно рисовать большой кистью след по координатам, который и будет рисоваться под маской?
Дубликаты нагромаждают ролик.
Чтобы не награмождали, не надо зацикливаться на задаче в 2 действия, а добавить третье - дубликанты только отвечают за визуальный эфект заполнения сложной по геометрии фигуры, появление всей фигуры происходит обычным способом, а не нужные уже дубликанты программно удаляются.
Есть другие способы решения проблемы, но в них требуется значительно больший объем знаний по АС.
Кисть это вариант. Даже придумал интересный вариант... Смотрите.
Программно создаётся пустой ролик, в котором будет рисоваться(!) маска. Вручную создаётся клип, в котором будут даны координаты открываемого участка. В нём создаётся клип-пустышка(можно точку нарисовать или флажок - без разницы, главное - координаты этого клипа). Эту точку вручную перемещаем по изгибам трубы(обычный motion или как-то там..). Всё, координаты есть.
Теперь что со всем этим делать..
Опять-таки используем setInterval или onEnterFrame для постоянного слежения за движением клипа-точки. Узнаём с их помощью координаты этой точки и по ним в клипе-маске программно рисуем методами клипа.
Таким образом, маска как-бы следит за изменением координат открываемого участка и открывает нужный клип, оставляя позади програмносозданный след.
В принципе есть еще один бездубликатный вариант с использованием BitmapData, я сейчас как раз его использую в своей программке.
lingardo
04.04.2008, 14:31
Сейчас попробую сделать.
Вобщем так.
Сделал всё без программирования =)
Сделал квадрат и по ключевым кадрам добавлял ему новые грани, которые вытягивал обычным Shape Tween. Всё получилось чётко и ровно (с хэлперами).
Осталось обработать места Пересечения Труб. Но тут с маской думаю всё нормально получится.
Ребята, спасибо всем! =)
Ну, а вот, что я имел ввиду(кстати, не думал что получится - ни разу такого не делал).:victory:
Подозреваю, что чем больше расстояние между ключевыми кадрами в dummy_mc, тем глаже получается след.
lingardo
04.04.2008, 22:15
Прикольно реализовал идею =) возьму на заметку.
Кстати, я вот подумал... Что если не рисовать в самой маске, а впихнуть в неё прозрачный битмап и копировать в него изображение из другого битмапа или клипа? По идее, можно сделать ни в чём не уступающую замену клипам-дубликатам. Вариант выше не гибкий - возможны только примитивы в качестве кисти...
Приду домой - попробую сделать.
FlashRus
06.04.2008, 09:10
Немогли бы вы немного объяснить как это работает, а то я с таким еще не сталкивался. Очень интересный эффект.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.