Форум программистов, компьютерный форум, киберфорум
Наши страницы
ActionScript
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
agiliter
1 / 1 / 0
Регистрация: 13.12.2012
Сообщений: 102
1

Способы создания анимации во flash-приложении

17.09.2014, 12:56. Просмотров 1016. Ответов 13
Метки нет (Все метки)

Добрый день! Задался недавно вопросом: какие существуют способы создания анимации во flash-приложении? Один способ я знаю - создавать обычные картинки в as3 проекте и вручную (через таймер, например) менять их координаты, последовательность вывода и т.д. А есть ли еще способы? Существуют ли какие-нибудь бесплатные библиотеки, анимационный редактор или еще что-то в этом роде? Я полный профан в этой области и даже не знаю с чего начать. Например, мне нужно сделать:
1. здание, вокруг которого летают птицы, ходят люди
2. Потом, допустим, здание взрывается
3. Экран заволакивает дымом

Как в этом сумбурном примере всё реализуется? Схематично, конечно

Еще я слышал про Autodesk Maya, в котором можно создавать анимации. Как их потом прикручивать к as3 проекту?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.09.2014, 12:56
Ответы с готовыми решениями:

Программа для создания Flash-анимации
Здравствуйте! Помогите мне пожалуйста новичку!!! В общем мне нужно создать...

Создание flash анимации из файлов с изображением.
Всем здравствуйте! Задача у меня такая: есть куча файлов с графиками, хочу...

Как во Flash-анимации открыть другую анимацию?
Доброго времени суток ... Вообщем такой трабл , я делаю сайт в флэше ( недавно...

Анимации создания и уничтожения объектов
Добрый день! Есть набор различных объектов Моделей животных. У каждого вида...

Программа для создания анимации
Здравствуйте, подскажите пожалуйста простенькую и удобную программу для...

13
TanaTiX
Модератор
2798 / 1652 / 168
Регистрация: 19.02.2011
Сообщений: 6,011
Завершенные тесты: 2
17.09.2014, 21:51 2
agiliter, есть наверняка какие-то приложения по созданию флеш-анимации. Но Maya к ним не относится. С ее помощью можно визуализировать (в статическую картинку или в видео) 3Д-сцену. Но можно эту сцену реализовать при помощи 3Д-движка (Away, Alternativa3d) и на флеше. Выбор подхода определяется задачей и возможностями.
0
agiliter
1 / 1 / 0
Регистрация: 13.12.2012
Сообщений: 102
19.09.2014, 08:47  [ТС] 3
А для программной анимации в плане производительности лучше использовать Event.ENTER_FRAME или Timer? Особенно, когда анимаций на сцене очень много.
0
TanaTiX
Модератор
2798 / 1652 / 168
Регистрация: 19.02.2011
Сообщений: 6,011
Завершенные тесты: 2
19.09.2014, 09:21 4
agiliter, это тоже зависит непосредственно от задачи и от желаемого эффекта.
0
agiliter
1 / 1 / 0
Регистрация: 13.12.2012
Сообщений: 102
19.09.2014, 09:56  [ТС] 5
TanaTiX, хочу создать что-то вроде набора классов собственный анимаций. У каждого объекта будет по три анимации: анимация начала выстрела, анимация летящего снаряда и анимация взрыва при попадании. Вот я и думаю как это реализовать. Предполагаю при создании объекта задавать все три анимации ключевыми словами, а по ним по типу фабрики создавать экземпляры различных классов анимаций. Ничего лучше не придумал. Пока думаю, что таймер предпочтительнее, т.к. мне кажется, что большое количество слушателей должно как-то негативно влиять на производительность (тем более ENTER_FRAME). К тому же классы анимации по идее неплохо бы сделать универсальными, а от проекта к проекту частота кадров может меняться.
0
TanaTiX
Модератор
2798 / 1652 / 168
Регистрация: 19.02.2011
Сообщений: 6,011
Завершенные тесты: 2
19.09.2014, 11:02 6
agiliter, когда-то участвовао в проекте, где как раз был выстрел, анимация полета снаряда и взрыв. Реализовывалось так:
  • отдельный объект - оружие, которое содержит анимацию выстрела, как одно из его состояний
  • отдельный объект - собственно снаряд
  • отдельный объект - сам взрыв
При этом специальный объект следил за удалением отживших свое снарядов и взрывов. Все это синхронизировалось и выглядело вполне естественно: снаряд вылетал именно там, где должен, все это сопровождалось нужным эффектом, при полете также были разные эффекты, ну и сам взрыв или его аналог. Эффекты при этом создавались программно (там достаточно интересная система была, потом ее перевели на систему частиц).
1
bus
34 / 34 / 3
Регистрация: 17.05.2014
Сообщений: 144
19.09.2014, 11:41 7
Цитата Сообщение от agiliter Посмотреть сообщение
Пока думаю, что таймер предпочтительнее, т.к. мне кажется, что большое количество слушателей должно как-то негативно влиять на производительность (тем более ENTER_FRAME).
В tween max, которая считается чуть ли не лучшей, анимация реализована на EnterFrame.
Там если я не ошибаюсь, каждый раз новый слушатель создается. Так что ничего плохого
в EF нет.
Но я бы сделал с единым EF, написал бы просто класс, куда передавал все анимации.
И делать на одном EF смысла нет, нужно ещё привязка к дельте времени, но даже и так
мало, нужно ещё эту дельту сглаживать.
В общем, скачайте лучше готовый tween и не теряйте время. Естественно, там не будет
анимации "полет снаряда" и ей подобной, но Вы напишите класс, куда будете передавать
дисплей обжект, который будет анимироваться. И этот класс уже будет путешествовать от
проекта к проекту. Если у Вас ещё и опыта достаточно, то напишите его легко расширяемым.
1
Theoryofgames
253 / 237 / 50
Регистрация: 20.12.2011
Сообщений: 707
19.09.2014, 14:38 8
Цитата Сообщение от bus Посмотреть сообщение
Пока думаю, что таймер предпочтительнее, т.к. мне кажется, что большое количество слушателей должно как-то негативно влиять на производительность (тем более ENTER_FRAME).
Таймер и enterframe несут совершенно разные логические нагрузки и использовать то или другое нужно исходя из необходимой задачи.
Таймер рагантирует Вам, что событие будет воспроизведено через определенный интервал процессорного времени (+/- несколько милисекунд). EnterFrame Вам такого не гарантирует. Например 2 Вас фпс 30 и вы выставляете что через 30 кадров должно произойти событие. Это не значит, что событие произойдет через секунду. В течении этой секунды фпс может "просесть" до 20 и событие наступит через полторы секунды.
Так что выбирать нужно исходя из конкретной задачи.
Вообще, как уже было сказано выше в приложении не имеет смысла выставлять более 1 одного слушаетя на EnterFrame (исключением могут быть некоторые библиотеки, в которые уже вшит свой собственный enter frame), поэтому проблем с производительностью данный слушатель вызывать не должен.

P.S. Сам использую ProxyTween с небольшими изменениями. Очень удобный твинер и довольно легкий.
1
agiliter
1 / 1 / 0
Регистрация: 13.12.2012
Сообщений: 102
22.09.2014, 09:52  [ТС] 9
Меня собственно интересует сама кухня. Каким образом делают анимации и затем как их прикручивают к проекту. Не всё же программно делается. Допустим, художник нарисовал анимацию спрайтами. Имеется ввиду, что он просто отрисовал последовательность изображений? А собирает их в анимацию программист? Я кухни этой не знаю, но хочу понять всё детально.
0
TanaTiX
Модератор
2798 / 1652 / 168
Регистрация: 19.02.2011
Сообщений: 6,011
Завершенные тесты: 2
22.09.2014, 10:04 10
agiliter, например, художник нарисовал бабочку, которая должна махать крыльями, следовать за курсором и за собой оставлять шлейф частиц, которые постепенно гаснут. Так вот художник/аниматор (на практике не редкость, когда это один человек) занимается анимацией непосредственно бабочки и рисует частицу (если там какой-то сильно хитрый эффект угасания, то его тоже можно сделать анимацией). А программист использует объект "бабочка", не задумываясь на внутренней анимацией, он лишь меняет положение этого объекта согласно положения мышки. Также программист следит, что бы частицы повлялись корректно и угасали, например, появлялись там, где находится в текущий момент бабочка и в течении 5 сек. смещались вниз на 50px и одновременно их alpha становится равной нулю, в этот момент происходит их удаление со сцены. Если анимация угасания реализована анимацией, то все сводится к определению ее окончания и, может, изменения координат частиц. Таким образом программисту совершенно фиолетово внутренне устройство "бабочки", но в зависимости от реализации его может интересовать устройство частицы.
0
agiliter
1 / 1 / 0
Регистрация: 13.12.2012
Сообщений: 102
22.09.2014, 10:20  [ТС] 11
TanaTiX, спасибо. Это именно то, что я хотел узнать. А в каком формате пишется художником/аниматором этот объект "бабочка"? Бобочка.as что ли? Мне бы маленький пример такого стороннего анимированного объекта и его прикручивания. Не обязательно бабочка =) Хоть квадрат с кругом. Можно в личку. Лучше раз увидеть, как говориться)
0
TanaTiX
Модератор
2798 / 1652 / 168
Регистрация: 19.02.2011
Сообщений: 6,011
Завершенные тесты: 2
22.09.2014, 11:04 12
Цитата Сообщение от agiliter Посмотреть сообщение
А в каком формате пишется художником/аниматором этот объект "бабочка"?
Художники/аниматоры не пишут, они рисуют и анимируют. Это может быть подгружаемый swf или даже png для частиц, а может быть класс в библиотеке (swc)
0
agiliter
1 / 1 / 0
Регистрация: 13.12.2012
Сообщений: 102
22.09.2014, 11:12  [ТС] 13
Цитата Сообщение от TanaTiX Посмотреть сообщение
Это может быть подгружаемый swf
т.е. если в приложении 10 тысяч анимаций, то подгружается 10 тысяч swf файлов? Многовато, но в принципе допустимо.
Цитата Сообщение от TanaTiX Посмотреть сообщение
а может быть класс в библиотеке (swc)
Типа твинмакса?
0
TanaTiX
Модератор
2798 / 1652 / 168
Регистрация: 19.02.2011
Сообщений: 6,011
Завершенные тесты: 2
22.09.2014, 11:14 14
Цитата Сообщение от agiliter Посмотреть сообщение
т.е. если в приложении 10 тысяч анимаций, то подгружается 10 тысяч swf файлов?
Если они разные - да, если одинаковые - нет. Все зависит от задачи.
Цитата Сообщение от agiliter Посмотреть сообщение
Типа твинмакса?
Почитайте 1й урок: Авторские уроки и статьи
1
22.09.2014, 11:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.09.2014, 11:14

Увеличение памяти во Flash приложении
Приветствую всех. Проблема вот в чём: в диспетчере задач на вкладке процессы в...

Создания прелоадера на Flash Builder
Все, сижу в очаянии полном. Третий день не могу сделать прелоадер на билдере....

шаблон создания тестов в Adobe Flash Professional CS 5.5
Мне необходимо создать учебные тесты во Флеш. В Adobe Flash Professional CS 3...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru