Летающие частицы!

Content on this page requires a newer version of Adobe Flash Player.

Get Adobe Flash player

Информация
Название: 
Летающие частицы!
Автор: 
samana
Формат видео: 
swf
Продолжительность: 
48 минут 47 секунд
Размер: 
~ 45 Мб

Вверху вы можете увидеть образец, как это можно использовать! Эти светлячки будут преследовать курсор, так же вы можете создавать и удалять их, изменяя число в текстовом поле. На самом деле, создать вот такие частицы совсем не трудно, особенно если вы уже отвыкли писать код в кадрах, и используете классы!

Этот урок не расчитан на абсолютных новичков, по этому, что такое, var, package, for(...)  или public, объяснятся не будет. Основная идея урока - показать приём движения частиц, используя преобразование координат.

Так же для написания классов я использовал редактор FlashDevelop, но вы можете создавать классы прямо во флеш. Урок достаточно подробно всё объясняет, по этому его продолжительность тоже достаточно большая.

Исходник: 

Впервые!

Если у вас было хоть раз желание сделать что-то новое и необычное, то этот видеокурс для вас! Знания ActionScript 3.0 вдохнут в ваши проекты новую жизнь, позволив тем самым поднять их на новый уровень

С помощью этого видеокурса вы пройдёте путь от новичка до Объектно-Ориентированного Программирования, сможете работать со многими популярными библиотеками и научитесь создавать сайты во flash! + Видеокурс по PaperVision3D в подарок!

Видеокурс содержит 119 видеоуроков в 12 главах. На сегодняшний день это единственный видеокурс, таких масштабов

Узнайте о других возможностях ActionScript 3.0

Создайте свою первую игру во Flash!

Box2D позволяет людям с небольшим опытом или недостаточными математическими знаниями программирования начать делать вещи, которые раньше они сделать не могли.

C помощью этого курса вы сможете программироавть физические взаимодействия, например столкновения двух объектов, а так же научитесь создавать игровой мир и игровых персонажей.

Уже в ближайшее время, после изучения курса и тренировки вы сможете создать свою первую flash игру-платформер, и чем чёрт не шутит - продать её!

Создайте свою первую игру прямо сейчас!

Комментарии

Аватар пользователя Fly

Классный урок

yahoo

спасибо :)

1) Админ всегда прав
2) Если админ не прав, смотри пункт 1

Мы в контакте - http://vkontakte.ru/club9573247
Не отвечаю на вопросы в личку касаемо Flash, у нас для этого есть форум

Аватар пользователя samana

Ура! Наконец-то опубликовали! Спасибо Fly!

Аватар пользователя liubik

Большое спасибо, очень классный урок.

dance3

Аватар пользователя Магадан

Интересно :)

Аватар пользователя Neo6666666

Прикольно. Все сделал. Получилось. Сделал их появление на мышку.  Но возник вопрос: Как удалить со сцены частицы?

Аватар пользователя samana

Рад, что кому-то нравится! Neo6666666 - очевидно нужно удалить то единственное, что вы добавили на сцену контейнер с частицами --> removeChild(контейнер). Лучше посмотрите исходник, потому что там включено событие на удаление со сцены, а видео уроке я это сделать забыл *^-^*

Аватар пользователя Neo6666666

А удаление из массива? Память не замусориться не существующими указателями? А то несмотря на неплохое железо 3000 элементов нехило грузят комп.

Аватар пользователя samana

Neo6666666 - Массив находится в контейнере, если вы удаляете контейнер, то его "внутренности" (кроме событий )теряют общую ссылку и удалятся когда сработает GC. После удаления контейнера из дисплей листа, обнулите ссылку на него, что бы GC стёр его из памяти наверняка.

 

var p_b:ParticleBox=new ParticleBox();

addChild(p_b);

//------

removeChild(p_b);

p_b=null;

 

p.s. 3000 - это всё же не мало. Даже не двигающиеся 3000 объектов, будут замедлять флеш.

Аватар пользователя stig85

Молодец! Очень полезно и красиво! Спасибо

Аватар пользователя Neo6666666

Как я вас понял, вы каждый раз удаляете ПартиклБокс. А как удалить частицы не затрагивая его? Я в ПартиклБокс добавил
public function addParts(e:MouseEvent):void{
   CreateParticle(100,colors);
   } и назначил после создания контейнера слушателя на нажатие мышки. Теперь создается 100 частиц при нажатии. А как удалить частицы  повесив это,например, на колесико через функцию в ПартиклБоксе?

Аватар пользователя hitab

круто)
но мне больше понравился подобный эффект здесь http://wonderfl.net/c/3lDU

Аватар пользователя samana

Neo6666666 - это уже другая история. Изменяйте класс, очищайте массив с частицами или добавляйте в него новые партиклы.

 

hitab - ещё бы! Земля и небо! Шедевр!

Аватар пользователя 2391063

супер урок, а вот дипозит битая ссыла)

Аватар пользователя Neo6666666

Очиститть массив не проблема. Я это сделал, но "удаленные" частицы остаются на сцене. Как от них избавиться, я пока не понял.
Как я понял, пример на странице реализован через удаление ПартиклБокса?

Аватар пользователя samana

Цитата: Neo6666666

Как я понял, пример на странице реализован через удаление ПартиклБокса?

Нет, бокс один. Просто он либо добавляет себе частиц, либо удаляет нужное количество.

Цитата: 2391063

супер урок, а вот дипозит битая ссыла)

На дипозит я не выкладывал, наверно это сделала администрация.

Аватар пользователя Neo6666666

Ну тогда у меня нескромная просьба))) Можеш выложить исходник примера со страницы?)))

Аватар пользователя samana

Цитата: Neo6666666

Можеш выложить исходник примера со страницы?)))

Извини, но исходником я поделится не смогу. И дело не в моей жадности и не в "секретности" кода. Я специально для своих уроков, делаю образец на странице красивее и немного изменённым, что бы подтолкнуть других на творчество и заставить подумать, как можно сделать что-то похожее, если они захотят конечно. И тогда (по идее), люди будут искать свои пути, будут писать свои функции, изменять что-то, экспериментировать, искать информацию в интернете и возможно даже читать книжки! Конечно, если вам сразу показать как что-то сделано, то вы без сомнения научитесь, но в ходе самостоятельных проб и ошибок, вы получите огромный опыт, который пригодится в будущем.

Если вы ещё не очень понимаете AS_3, то можете задавать вопросы на форумах, собирать информацию постепенно. В итоге вы создадите свой код, который будет вам ясен от и до, и возможно сами создадите уроки для других.

p.s. или вы можете взломать этот swf и злорадно потереть руки.

Аватар пользователя Neo6666666

Хехе))Была такая мыслишка, но так не интересно)) А вообще я еще не до конца понял тонкости Флэша и почему не работает такая конструкция.
код удаления частиц в ПБоксе:
var i:uint=particles.lenght;
var p:Particle= particles[i-1];
removeChild(p);
particles.pop().

Аватар пользователя samana

Цитата: Neo6666666

но "удаленные" частицы остаются на сцене. Как от них избавиться, я пока не понял.

Вы хотите удалить всех "детей" ПБокса? - так удалите их, а потом отчистите массив

while(numChildren){removeChildAt(0)}

Аватар пользователя Neo6666666

"Вы хотите удалить всех "детей" ПБокса? - так удалите их, а потом отчистите массив"
Нет. Просто удалив из массива частицу она остается на сцене и не двигается (само собой, ее же не обрабатывают), но как удалить ее со сцены? Что бы она исчезла. Как исчизают частицы в примере.

Аватар пользователя samana

Цитата: Neo6666666

но как удалить ее со сцены? Что бы она исчезла

Я ведь уже показал как это сделать, только вы почему-то решили, что это не то, что вам нужно.

while(numChildren){removeChildAt(0)}

- код в пБоксе.

Давайте не будем делать тут "форум", а лучше создайте тему на реальном форуме, и желающие помочь, я думаю найдутся.

Извините, но 

close

Аватар пользователя Fly

Ребята, действительно, не надо засорять комменты, для таких вопросов есть форум, там же и отвечают

1) Админ всегда прав
2) Если админ не прав, смотри пункт 1

Мы в контакте - http://vkontakte.ru/club9573247
Не отвечаю на вопросы в личку касаемо Flash, у нас для этого есть форум

Аватар пользователя Rell

Японцы хитрые по ссылке http://wonderfl.net/c/3lDU  AS файл выложили а файл FLA нет.

dontknow

Аватар пользователя samana

Цитата: Rell

Японцы хитрые по ссылке http://wonderfl.net/c/3lDU  AS файл выложили а файл FLA нет.

А там fla и не нужен, ведь всё сделано исключительно с помощью кода. В этом и есть фишка данного сайта.

Аватар пользователя fredi

Отличный урок! спасибо...

Аватар пользователя samana

ElleS,
Здесь нет javascript.

Аватар пользователя Marik

samana спасибо большое за урок, мне понравился, обьясняеш на мой взгляд очень доступно. Желаю побольше вдохновения, чтобы этот урок был не последним :)

Аватар пользователя Rell

samana,
Все равно какие то интересные японцы. Выложили флешку, мол нате посмотрите и as файл для скачивания. Я пробовал подцепить его к fla файлу но такой класс 3lDU adobe flash не хочет определять, если его данный файл 3lDU.as  переименовать например в japan.as то программа видит его но при этом при тестировании вылазит куча ошибок. Главное выложили as файл и флеш файл а as ведь без fla не работает, трудно что ли им было выложить и fla файл что бы его потом можно было бы сохранить как собственный флеш файл.

meeting

Аватар пользователя samana

Rell,

Запустить тот эффект у меня тоже не получилось, потому что я не нашёл все классы, которые там использовались... Может там явно где-то ссылка указана на них, но у меня вместо японских букв - квадратики.....

Классы можно скомпилировать ведь не только во флеш, есть ещё и Flex,FD,FDT...по этому fla собственно и не выложен, вед можно и без него,  там только нужно будет прописать основной класс, что бы получись swf. Но как я уже говорил, некоторых классов на сайте я не увидел....

Аватар пользователя Rell

samana,
То то и оно

respekt

Страницы