|
0 Всего найдено: 7
Butterfly88
Сообщение
09/01/2012 16:37
Копия темы
Вопрос по AS3 Ребята, подскажите, пожалуйста, кто знает, два вопроса по AS3 1. Использую FlashDevelop. По какому алгоритму я могу добавить картинку в проект (так, чтобы она слинковалась потом в SWF файлом), а затем её содержимое загрузить в экземпляр класса Sprite? 2. Каким образом лучше создать класс анимированного спрайта? Т.е. спрайта, содержимое которого меняется каждый N-ый период времени. Скажем так, если бы я такую задачу реализовывал на С# я бы создал некий класс, типа AnimatedSprite, который бы содержал в себе контейнер для хранения последовательности кадров. И ссылку типа Sprite для отображения текущей фазы. Соответственно отрисовывал бы я именно ссылку, но её содержимое менял бы по таймеру на соответствующий кадр из контейнера. Забегая вперёд скажу, что последовательность кадров будет в виде spritesheet, т.е. ленты из отдельных картинок. На самом деле парсить её бы не хотелось, чтобы потом засунуть отдельный кадры в контейнер. Каким лучше способом мне сделать этот анимированный спрайт, вырезая кусочки прямо из ленты? Заранее благодарю за помощь.
DEaDA
Сообщение
09/01/2012 18:09
Копия темы
не совсем ясно, но 1. объявить картинку, как класс [Embed(source='../assets/animation.png')] public static var my_animation:Class; 2. создать спрайт-контейнер, поместить туда картинку var spr:Sprite=new Sprite() addChild(spr) spr.addChild(new my_animation()) зная ширину и высоту кадра в картинке, можно написать класс для создания массива анимаций для этой картинки внутри контейнера, потом "воспроизводить" нужные анимации через массив можно найти готовые решения в нете, можно своё написать по сути, нужен класс, который кушает картинку с указанием тобою шир/выс кадра в ней и выдает массив с кадрами, далее с кадрами играешь как хочешь
Butterfly88
Сообщение
09/01/2012 18:28
Копия темы
Спасибо за ответ, Костя, уточни ещё только немного: 1. Каким именно методом я потом смогу в спрайт загрузить картинку, объявленную как класс? Через AddChild(имя_класса)? 2. Скажем так как парсить каждую картинку из общей последовательности я конечно разберусь, а ты мне подскажи т.е. у меня есть контейнер и уже есть массив. Т.е. мне каждый раз просто через addChild выбирать новый элемент в массиве? На производительности это не скажется?
DEaDA
Сообщение
09/01/2012 18:37
Копия темы
могу что-то подзабыть, конечно, но 1.я же показал пример :) этот класс будет уже битмапкой var bmp:Bitmap=new my_animation() as Bitmap 2.нет, добавил спрайтшит в спрайт, спрайт лежит на сцене, var spr:Sprite=new Sprite() addChild(spr) spr.addChild(new my_animation()) указали видимость рендера для этого спрайта равного шир/высоте кадра spr.scrollRect=(0,0,шир, выс) теперь просто двигаем битмапу по x (если спрайтшит в виде линии) на ширину кадра умноженного на нужный кадр то есть резать, добавлять ничего не нужно уже, только двигать картинку можно готовые примеры найти, должно быть полно, типа AS3 spritesheet animation
rabbitwindfall
Сообщение
15/01/2012 01:51
Копия темы
0
Не страдайте ерундой. 99.9% вопросов решаются куда быстрее через Flash Professional. Я еще в жизни не видел ничего, что нельзя было бы сделать быстрее во Flash Professional, чем во Flash Builder и тому подобное. Я замерял сколько времени уходит на написание игрушки на Flex и Flash так вот во флеше гораздо быстрее все происходит. А на выходе код одинаковый. Так зачем платить больше |
Выразить восторг, поругаться или предложить что-нибудь можно на форуме |
Для обсуждения этого сервиса так же есть темы на фрилансе по поиску , флудотопу ,и по удалённым сообщениям ,и по Актуальным/популярным темам , и по топу "кто кому больше наотвечал" |